码迷,mamicode.com
首页 > 其他好文 > 详细

滤镜链

时间:2015-06-26 17:50:34      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:

滤镜链:即用一个滤镜的output image 当作 另一个滤镜的 input:

 1 CIContext *context = [CIContext contextWithOptions:nil];
 2     CIImage *image = [CIImage imageWithCGImage:[UIImage imageNamed:@"aa11.jpg"].CGImage];
 3     
 4    
 5     
 6     CIFilter *filter = [CIFilter filterWithName:@"CISepiaTone"];
 7     [filter setValue:image forKey:kCIInputImageKey];
 8     [filter setValue:@0.8f forKey:kCIInputIntensityKey];
 9     CIImage *result = [filter valueForKey:kCIOutputImageKey];
10   
11     CIFilter *gloom = [CIFilter filterWithName:@"CIGloom"];
12     [gloom setValue:result forKey:kCIInputImageKey];
13     [gloom setValue:@15.0f forKey:kCIInputRadiusKey];
14     [gloom setValue:@0.55f forKey:kCIInputIntensityKey];
15     result = [gloom valueForKey:kCIOutputImageKey];
16     
17     CIFilter *bumpDistortion = [CIFilter filterWithName:@"CIBumpDistortion"];
18     [bumpDistortion setValue:result forKey:kCIInputImageKey];
19     [bumpDistortion setValue:[CIVector vectorWithX:300 Y:50] forKey:kCIInputCenterKey];
20     [bumpDistortion setValue:@100.0f forKey:kCIInputRadiusKey];
21     [bumpDistortion setValue:@3.0f forKey:kCIInputScaleKey];
22     result = [bumpDistortion valueForKey:kCIOutputImageKey];
23   
24     
25     CGRect extent = [result extent];
26     CGImageRef cgImage = [context createCGImage:result fromRect:extent];
27     
28     UIImage *resultImg = [UIImage imageWithCGImage:cgImage];
29     
30     UIImageView *imgView = [[UIImageView alloc]initWithFrame:self.view.bounds];
31     [imgView setImage:resultImg];
32     [self.view addSubview:imgView];

 

滤镜链

标签:

原文地址:http://www.cnblogs.com/grq186/p/4602535.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!