由于我的应用程序的功能,我会自动增强全分辨率图像。在 iPhone 5 之前的设备上,它需要永远(时钟为 71 秒)。
我正在使用标准的自动增强代码:
CIImage * image = [[CIImage alloc] initWithImage:uiImage];
NSArray * filters = [image autoAdjustmentFilters];
for (CIFilter * filter in filters) {
[filter setValue:image forKey:kCIInputImageKey];
image = filter.outputImage;
}
CGImageRef cgImage = [_context createCGImage:image fromRect:[image extent]];
dispatch_async(dispatch_get_main_queue(), ^{
UIImage * final = [UIImage imageWithCGImage:cgImage scale:uiImage.scale orientation:uiImage.imageOrientation];
CGImageRelease(cgImage);
if (completion)completion(final);
});
当我暂停应用程序时,'createCGImage' 方法将永远持续下去。如何在更快的时间内呈现相同的输出?