objective c-iOS上UI图像模糊非常慢



我想在我的图像视图上应用模糊。我有这个模糊代码:

- (UIImage *)applyBlurOnImage: (UIImage *)imageToBlur withRadius: (CGFloat)blurRadius
{
    CIImage *originalImage = [CIImage imageWithCGImage: imageToBlur.CGImage];
    CIFilter *filter = [CIFilter filterWithName: @"CIGaussianBlur" keysAndValues: kCIInputImageKey, originalImage, @"inputRadius", @(blurRadius), nil];
    CIImage *outputImage = filter.outputImage; CIContext *context = [CIContext contextWithOptions:nil];
    CGImageRef outImage = [context createCGImage: outputImage fromRect: [outputImage extent]];
    return [UIImage imageWithCGImage: outImage];
}

但对于我的UIView在iPad上的屏幕截图来说,模糊发生得很慢。

有什么更快的方法吗?

苹果在WWDC发布了满足您需求的代码。

它是UIImage上的一个类别,并使用Accelerate框架进行快速图像处理。如果你有一个开发者帐户,你可以在这里获得UIImage类别。

试试这个库。它相当新,速度也相当快。请记住,无论哪种方式,模糊都是设备处理起来非常糟糕的事情,所以它不会像禅宗一样,但它非常好。

或者,你可以参考这个问题,它有一些高质量的答案。

相关内容

  • 没有找到相关文章

最新更新