我对Core Image过滤器有疑问。 代码非常简单。我创建了一个新项目“单视图应用程序”; 添加CoreImage框架..(这里我要添加任何头文件?) 添加uiiamgeview ...并将图像设置为its.image。 但是,当我尝试以下代码时,它没有显示任何效果。 你能不能给我一个错误或错误的手? 顺便说一下,我正在使用Xcode 4.2.1在模拟器5.0下运行该程序 提前谢谢。
CIImage *backgroundciImage = self.sourceImageView.image.CIImage;
CIContext *context = [CIContext contextWithOptions:nil];
//set the filter
CIFilter *filter = [CIFilter filterWithName:@"CIGammaAdjust"];
[filter setDefaults];
[filter setValue:backgroundciImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:3.0f] forKey:@"inputPower"];
//get the output image
CIImage *outputImage = [filter valueForKey:@"outputImage"];
self.sourceImageView.image = [UIImage imageWithCGImage:[context createCGImage:outputImage fromRect:outputImage.extent]];
答案 0 :(得分:0)
以下代码适合我。和
CIImage *image = [filterTemp valueForKey: @"outputImage"];
CIContext *context = [CIContext contextWithOptions:nil];
CIFilter* filterBW = [CIFilter filterWithName:@"CIGammaAdjust"];
[filterBW setValue:image forKey:@"inputImage"];
[filterBW setValue: [NSNumber numberWithFloat:2.00f] forKey: @"inputPower"];
CIImage *resultImage = [filterBW valueForKey: @"outputImage"];
self.sourceImageView.image = [UIImage imageWithCGImage:[context createCGImage:resultImage fromRect:resultImage.extent]];
或在您的情况下您可以在相应的.h文件中声明CIImage * backgroundciImage。,