【发布时间】:2013-04-03 02:00:31
【问题描述】:
我想使用以下代码将CIGloom 过滤器应用于我的 iOS 应用程序中的图像:
CIFilter * ciEffectFilter = [CIFilter filterWithName:@"CIGloom"];
[ciEffectFilter setDefaults];
[ciEffectFilter setValue:myimage forKey:@"inputImage"];
[ciEffectFilter setValue:[NSNumber numberWithFloat: 0.75] forKey:@"inputIntensity"];
[ciEffectFilter setValue:[NSNumber numberWithFloat: 20] forKey:@"inputRadius"];
CIImage * outputImage = [filter valueForKey:@"outputImage"];
CGImageRef gimg = [context createCGImage:outputImage fromRect:[outputImage extent]];
UIImage *newImg = [UIImage imageWithCGImage:cgimg];
CGImageRelease(cgimg);
myImageView.image = newImg;
但这不起作用。它只会给我一个空白图像。
当我使用CIHueAdjust 过滤器尝试使用以下代码进行类似操作时:
CIFilter *filter = [CIFilter filterWithName:@"CIHueAdjust"];
[filter setDefaults];
[filter setValue:foreciImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat: 3.0f] forKey:@"inputAngle"];
CIImage *outputImage = [filter outputImage];
CGImageRef cgimg = [context createCGImage:outputImage fromRect:[outputImage extent]];
UIImage *newImg = [UIImage imageWithCGImage:cgimg];
它按预期运行。
为什么我的CIGloom Core Image 过滤器在这里不起作用?
【问题讨论】:
-
CIGloom 适用于当前版本的 iOS (iOS6)
标签: ios5 core-image