iOS 高斯模糊

- (UIImage *)cgreateGaussianBlurImage:(UIImage *)image {

CIContext *context = [CIContext contextWithOptions:nil];

CIImage *ciImage = [CIImage imageWithCGImage:image.CGImage];

CIFilter *filter = [CIFilter filterWithName:@"CIGaussianBlur"];

[filter setValue:ciImage forKey:kCIInputImageKey];

//设置模糊程度 (值越大,越模糊)

[filter setValue:@10.0f forKey: @"inputRadius"];

CIImage *result = [filter valueForKey:kCIOutputImageKey];

//        CGRect frame = [ciImage extent];

CGImageRef outImage = [context createCGImage:result fromRect:ciImage.extent];

UIImage * blurImage = [UIImage imageWithCGImage:outImage];

// 内存释放 (补充)

CGImageRelease(outImage);

return blurImage;

}

你可能感兴趣的:(iOS 高斯模糊)