[Swift] 画像を合成する
公開日:
:
iPhone App 開発, Swift
画像を合成
以下の2つの画像を合成してみます。円と四角です。
画像をプロジェクトに追加
画像をプロジェクトに追加します。
プロジェクト名を右クリック、「Add Files to …」で画像ファイルを選択します。
プロジェクト->TARGETSのプロジェクトを選択し、「Build Phases」タブの「Copy Bundle Resources」を参照し、画像ファイルが追加されたか確認します。
StoryBoard
StoryBoardにUIImageViewを追加してください。
サイズは画像サイズに合わせること。
そしてViewControllerにUIImageViewを結びつけます。(outlet)
ViewController.swift
メインのViewControllerのソースです。
import UIKit class ViewController: UIViewController { @IBOutlet weak var imageView: UIImageView! override func viewDidLoad() { super.viewDidLoad() imageView.image = self.synthesizeImage(["square", "circle"], size: CGSize(width: 70, height: 70)) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } func synthesizeImage(names: Array<String>, size: CGSize) -> UIImage { UIGraphicsBeginImageContextWithOptions(size, false, 0.0); for name in names { if let image = UIImage(named: name) { image.drawInRect(CGRectMake(0, 0, image.size.width, image.size.height)) } } let newImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return newImage } }
画像の合成は16行目のsynthesizeImage関数で処理します。
引数はStringの配列と、CGSizeです。
Stringには画像ファイルの名前を格納、CGSizeは画像サイズを渡します。
引数は好きなようにカスタマイズしてください。画像ファイルが固定ならベタで書いてもいいかも。
19行目のfor文で配列の画像を繰り返し処理します。
9行目で出力。
結果
ad
関連記事
-
-
[iPhone App] WorkManagerの不具合について
バージョン1.2.2の不具合 11/25日現在、iPhoneアプリの「WorkManger」バージ
-
-
iPhoneApp WorkManager公開されました!
きっとリジェクトされるんだろうなと思いながら申請を出して1週間。 本日、公開のメールが届きまし
-
-
NSDateを5分刻み・15分刻みで丸める
NsDateを初期値としてUIDatePicker等に設定する場合、日付の丸め処理が必要になるのでメ
-
-
小さなことからコツコツと
これまでHTMLとCSSだけで生きてきただけあって、プログラム言語がいまいちわからない。 Mo
-
-
TabBarControllerとNavigationControllerのボタン追加
TabBarとNavigationを同時に使っているViewControllerの場合、naviga
-
-
Xcode5のstoryboard内でUIKeyCommandエラーの対処法
既存のプロジェクトからstoryboardにあるオブジェクトをコピペして、新規プロジェクトに貼付けた
-
-
[Swift] CoreDataで検索したデータを削除する
CoreDataの検索と削除 前の投稿 CoreDataを使ってみる をふまえて今度は検索&削除
-
-
[Objective-C] 文字列操作の便利Tips
Tipsいろいろ 先日の投稿 共通関数をまとめたクラスを作ろう!の流れで、文字列を操作するときに便