import UIKit
class ViewController: UIViewController {
@IBOutlet weak var imageView1: UIImageView!
@IBOutlet weak var imageView2: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
imageView2.image = self.outputImageWithFilterName(filterName: "CIMotionBlur")
}
// CIMotionBlur
func outputImageWithFilterName(filterName : String) -> UIImage {
// 1. 將UIImage轉換成CIImage
let ciImage = CIImage(image: imageView2.image!)
// 2. 創建濾鏡
let filter = CIFilter(name: filterName)
filter?.setValue(ciImage, forKey: kCIInputImageKey)
filter?.setValue( 10, forKey: "inputRadius")
// 3. 渲染並輸出CIImage
let outputImage = filter?.outputImage
// 4. 獲取繪製上下文
let context = CIContext(options: nil)
// 5. 創建輸出CGImage
let cgImage:CGImage = context.createCGImage(outputImage!, from: outputImage!.extent)!
let image = UIImage.init(cgImage: cgImage)
// 6. 返回image
return image
}
}
CoreImage濾鏡動態模糊
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.