1,效果圖
2,樣例代碼
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
import UIKit class ViewController : UIViewController { @IBOutlet weak var imageView: UIImageView ! @IBOutlet weak var slider: UISlider ! //原圖 lazy var originalImage: UIImage =
{ return UIImage (named: "image1.jpg" ) }()! lazy var context: CIContext =
{ return CIContext (options: nil ) }() override func viewDidLoad()
{ super .viewDidLoad() } //滑塊拖動後 @IBAction func sliderValueChanged(_
sender: AnyObject )
{ //獲取原始圖片 let inputImage
= CIImage (image:
originalImage) //使用高斯模糊濾鏡 let filter = CIFilter (name: "CIGaussianBlur" )! filter .setValue(inputImage,
forKey:kCIInputImageKey) //設置模糊半徑值(越大越模糊) filter .setValue(slider.value,
forKey: kCIInputRadiusKey) let outputCIImage
= filter .outputImage! let rect
= CGRect (origin: CGPoint .zero,
size: originalImage.size) let cgImage
= context.createCGImage(outputCIImage, from: rect) //顯示生成的模糊圖片 imageView.image
= UIImage (cgImage:
cgImage!) } override func didReceiveMemoryWarning()
{ super .didReceiveMemoryWarning() } } |