使用核心图像过滤器的图像

时间:2011-12-22 06:11:16

标签: iphone filter ios5 core-image

我已经使用核心图像框架在我的项目中添加图像过滤器。我添加的前五个过滤器工作正常。但是当我实现其他过滤器时。图像关闭。工作的过滤器是: 1)CIHueAdjust 2)CIGammaAdjust 3)CIExposureAdjust 4)CIColorMonochrome 5)CISepiaTone 对我来说没有用的其他过滤器是CIGloom,CILineOverlay和其他。这是我的代码.Plz帮助我,我错了.....

CIImage *inputImage = [[CIImage alloc] initWithImage:[UIImage imageNamed:@"leaves2.png"]];
CIFilter *Gloom = [CIFilter filterWithName:@"CIGloom"];
[Gloom setDefaults];
[Gloom setValue: inputImage forKey:@"inputImage"];
[Gloom setValue:[NSNumber numberWithFloat: 10.00]
                  forKey:@"inputRadius"];[Gloom setValue:[NSNumber numberWithFloat: 0.8f]
         forKey:@"inputIntensity"];
CIImage *outputImage = [Gloom valueForKey:@"outputImage"];
// define context
CIContext *context = [CIContext contextWithOptions:nil];
// set image to UIImageView
imageView.image = [UIImage imageWithCGImage:
                   [context createCGImage:outputImage
                                 fromRect:outputImage.extent]];

单击按钮时。图像熄灭。

1 个答案:

答案 0 :(得分:2)

iOS 5不包含Mac OS X所做的所有核心图像过滤器... CIGloom和CILineOverlay仅限Mac。

您可以通过调用以下命令获取iOS 5中所有可用过滤器名称的数组:

NSArray *filterNamesArray = [CIFilter filterNamesInCategories:[NSArray arrayWithObject:kCICategoryBuiltIn]];