0
在bitFountain的在线教程的帮助下,一直在开发图像过滤应用程序。用户应该能够选择已添加到相册的照片的图像,然后可以将照片添加到照片或删除该图像。 我的删除图像功能运行正常,但添加过滤器不起作用。inputImage = nil:过滤的图像不显示?
我已将三个过滤器实例记录到控制台,因为它们是由方法返回的,但它作为inputImage = nil返回。
2015-10-19 10:41:53.634 FilterApp[78451:28732768] <CISepiaTone: inputImage=nil inputIntensity=1>
2015-10-19 10:41:53.634 FilterApp[78451:28732768] <CIGaussianBlur: inputImage=nil inputRadius=1>
2015-10-19 10:41:53.635 FilterApp[78451:28732768] <CIColorClamp: inputImage=nil inputMinComponents=[0.2 0.2 0.2 0.2] inputMaxComponents=[0.9 0.9 0.9 0.9]>
inputImage = nil是什么意思?
我不确定代码可能出错的地方,或者如果这个问题甚至是代码外部的。 (使用Xcode7和iPhone 4s模拟器。)
编辑:这是用于转换为UIImage的代码。
- (UIImage *)filteredImageFromImage:(UIImage *)image andFilter:(CIFilter *)filter
{
CIImage *unfilteredImage = [[CIImage alloc] initWithCGImage:image.CGImage];
[filter setValue:unfilteredImage forKey:kCIInputImageKey];
CIImage *filteredImage = [filter outputImage];
CGRect extent = [filteredImage extent];
CGImageRef cgImage = [self.context createCGImage:filteredImage fromRect:extent];
UIImage *finalImage = [UIImage imageWithCGImage:cgImage];
return finalImage;
}
可以请你上传完整的例子??我无法理解你的答案。 –
我其实已经在代码中已经按照教程中的内容。我将更新我的问题以显示整个代码(对不起,应该在开始时添加这个代码)。 – hinterbu