java毛玻璃_模糊效果(毛玻璃效果)

模糊效果(毛玻璃效果)

效果演示:

a60d75c4d5cf4d699cccd4a9db161dbb.gif

1. 使用iOS自带的 UIImage+ImageEffects 文件

文件中有这么几个方法:

- (UIImage *)applyLightEffect;

- (UIImage *)applyExtraLightEffect;

- (UIImage *)applyDarkEffect;

- (UIImage *)applyTintEffectWithColor:(UIColor *)tintColor;

- (UIImage *)applyBlurWithRadius:(CGFloat)blurRadius tintColor:(UIColor *)tintColor saturationDeltaFactor:(CGFloat)saturationDeltaFactor maskImage:(UIImage *)maskImage;

2. 使用 CoreImage 中的模糊滤镜

coreImage是苹果用来简化图片处理的框架

CIImage, CIFilter与CIContext三者之间的联系(CoreImage中三个重要的类)

示例:

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

// CIImage

CIImage *ciImage = [[CIImage alloc] initWithImage:image];

// CIFilter(滤镜的名字, 不要写错 高斯模糊)

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

// 将图片输入到滤镜中

[blurFilter setValue:ciImage forKey:kCIInputImageKey];

/**在传入图片进入滤镜后,可以更改滤镜的一些参数进行设置,比如模糊程度等*/

// NSLog(@"%@", [blurFilter attributes]); // 打印看一下有哪些参数可以设置及相关信息

// inputRadius参数: 模糊的程度 默认为10, 范围为0-100, 接收的参数为NSNumber类型

// 设置模糊的程度

[blurFilter setValue:@(8) forKey:@"inputRadius"];

// 将处理好的图片输出

CIImage *outImage = [blurFilter valueForKey:kCIOutputImageKey];

// CIContext 上下文(参数nil->默认为CPU渲染, 如果想用GPU渲染来提高效率的话,则需要传参数)

CIContext *context = [CIContext contextWithOptions:nil];

// 将处理好的图片创建出来 outImage原来的大小size

CGImageRef outputCGImage = [context createCGImage:outImage

fromRect:[outImage extent]];

UIImage *blurImage = [UIImage imageWithCGImage:outputCGImage];

// 释放CGImageRef

CGImageRelease(outputCGImage);

return blurImage;

}

3. 使用 UIVisualEffectView (实时)(iOS8)

//生成该对象

UIVisualEffectView *effectView = [[UIVisualEffectView alloc] initWithEffect:[UIBlurEffect effectWithStyle:UIBlurEffectStyleLight]];//然后添加将其添加到相应的UIView 之上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值