-
用系统的CIFilter实现
// blur value:0 - 3 @IBAction func sliderValueChanged(_ sender: UISlider) { let originImage = CIImage(cgImage: self.originImage.cgImage! ) //创建高斯模糊滤镜 let filter = CIFilter(name: "CIGaussianBlur") filter!.setValue(originImage, forKey: kCIInputImageKey) filter!.setValue(NSNumber(value: sender.value * 3), forKey: kCIInputRadiusKey) //生成模糊图片 let context = CIContext(options: nil) let outputCIImage = filter!.outputImage! let rect = CGRect(origin: CGPoint.zero, size: self.originImage.size) let blurCGImage = context.createCGImage(outputCIImage, from: rect)! let blurImage = UIImage(cgImage: blurCGImage) // do something with blurImage }
网友评论