hoz blog

営業からSEに転職した文系エンジニアです。プログラミングと趣味の株に関してブログを書いていこうと思います。

【Swift】 超簡単!画像にフィルターを付けて加工する方法

まずframeworkをimportする
CoreImage

linked frameworks and librariesのプラスボタンをクリック
f:id:takanori5:20171026225412p:plain

CoreImageを選択してADD
f:id:takanori5:20171026225459p:plain

あとはボタンタップ時などに以下のように実装すればOKです。

import CoreImage

超簡単ですね!!

// image が 元の画像
let ciImage:CIImage = CIImage(image:image);
let ciFilter:CIFilter = CIFilter(name: "CISepiaTone")
ciFilter.setValue(ciImage, forKey: kCIInputImageKey)
ciFilter.setValue(0.8, forKey: "inputIntensity")
let ciContext:CIContext = CIContext(options: nil)
let cgimg:CGImageRef = ciContext.createCGImage(ciFilter.outputImage, fromRect:ciFilter.outputImage.extent())

//image2がフィルター後画像
let image2:UIImage? = UIImage(CGImage: cgimg, scale: 1.0, orientation:UIImageOrientation.Up)