在ios5上模糊图像

时间:2013-09-25 09:17:49

标签: ios

我在iOS 5上引用网站模糊图片:

link

网站提供了很多模糊图像的方法

最后我用

- (UIImage *)blurryImage:(UIImage *)image withBlurLevel:(CGFloat)blur;

模糊图片。

在iOS 6上运行正常,但在iOS 5上遇到问题

问题发生在

CGContextRef ctx = CGBitmapContextCreate(
                                outBuffer.data,
                                outBuffer.width,
                                outBuffer.height,
                                8,
                                outBuffer.rowBytes,
                                colorSpace,
                                kCGImageAlphaNoneSkipLast);

ctx为nil,错误信息为:

<Error>: CGBitmapContextCreate: invalid data bytes/row: should be at least 2560 for 8 integer bits/component, 3 components, kCGImageAlphaNoneSkipLast.

这是什么意思?

2 个答案:

答案 0 :(得分:0)

查看伟大的Nick Lockwood的FXBlurView - 它给iOS 7提供了像iOS 5及更高版本的模糊

FXBlurView

答案 1 :(得分:0)

您可以使用UIVisualEffectView,或者如果您想要更多控制权,可以使用Apple的UIImageEffects示例代码。

以下是iOS Developer Library上的示例代码:Blurring and Tinting an Image

以下是如何使用它:

#import "UIImageEffects.h"
...

self.originalImageView.image = [UIImageEffects imageByApplyingLightEffectToImage:[UIImage imageNamed:@"yourImage.png"]];