1.

UIImage *imag = [UIImage imageNamed:@"img"];

/* --------------------使用 coreImg  ---------------------------  */

// CIImage

CIImage *ciimg = [[CIImage alloc] initWithImage:imag];

// CIFilter

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

// 可以输出设置的模糊的程度

NSLog(@"%@",[blurFilter attributes]);

// 根据上一步可以设置模糊程度

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

// 图片输入滤镜

[blurFilter setValue:ciimg forKey:kCIInputImageKey];

// 将推片输出

CIImage *outPutImg = [blurFilter valueForKey:kCIOutputImageKey];

// CIContext

CIContext * context = [CIContext contextWithOptions:nil];

// 获取CGImage句柄

CGImageRef outImgRef = [context createCGImage:outPutImg fromRect:[outPutImg extent]];

//  h获取到最后的图片

UIImage *blurImg = [UIImage imageWithCGImage:outImgRef];

// 释放句柄

CGImageRelease(outImgRef);

// 最后得到模糊的图片    blurImg

第二种

/* ___________________ UIImage+ImageEffects.h ________________________________ */

UIImage *sourImg = [UIImage imageNamed:@"img"];

UIImage *blurImg = [sourImg blurImageWithRadius:30];

第三种                    UIVisualEffectView

UIScrollView *sc = [[UIScrollView alloc] initWithFrame:self.view.bounds];

UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 600, 500)];

imgView.image = imag;

[sc addSubview:imgView];

sc.contentSize = imgView.bounds.size;

[self.view addSubview:sc];

UIVisualEffectView *effectView = [[UIVisualEffectView alloc] initWithEffect:[UIBlurEffect effectWithStyle:UIBlurEffectStyleExtraLight]];

effectView.frame = CGRectMake(0, 200, 400, 200);

[self.view addSubview:effectView];

UILabel *lable = [[UILabel alloc] initWithFrame:effectView.bounds];

lable.text = @"模糊背景";

lable.font = [UIFont systemFontOfSize:50];

lable.textAlignment = NSTextAlignmentCenter;

//  添加模糊的子effictView  使用的是  --  UIVibrancyEffect  且需要和父类保持一致

UIVisualEffectView *subEffectView = [[UIVisualEffectView alloc] initWithEffect:[UIVibrancyEffect effectForBlurEffect:(UIBlurEffect *)effectView.effect]];

subEffectView.frame = effectView.bounds;

// 将子模糊View 添加到EffectView 的contenctView 才能有效果

[effectView.contentView addSubview:subEffectView];

[subEffectView.contentView addSubview:lable];

IOS 图片模糊处理 ------ 直接代码 复制出去就可用 值得标记的更多相关文章

  1. ios图片轮播效果

    代码地址如下:http://www.demodashi.com/demo/11959.html ImageCarousel 简单封装的图片轮播器 内存过大由于我加载的图片分辨率较高(4k) 文件目录 ...

  2. iOS 图片部分模糊,类似于美图秀秀

    代码地址如下:http://www.demodashi.com/demo/14277.html 演示效果 演示效果 代码结构 项目结构截图如下: 该模块的核心源码部分为 MBPartBlurView, ...

  3. wps 图片代码 复制 粘贴

    <table><tr><td><img src="C:\Users\Administrator\Desktop\QQ截图20160921180946 ...

  4. 实现iOS图片等资源文件的热更新化(三):动态的资源文件夹

    简介 此文,将尝试动态从某个不确定的文件夹中加载资源文件.文章,会继续完善自定义的 imageNamed 函数,并为下一篇文章铺垫. 这么做的意义 正如我们经常所说的那样,大多数情景知道做事的意义往往 ...

  5. 大屏iPhone的适配 +iOS 图片尺寸要求

    摘自:http://blog.ibireme.com/2014/09/16/adapted_to_iphone6/ 苹果公司官网设计介绍到:Retina显示屏的超高像素密度已超过人眼能分辨的范围.Re ...

  6. iOS 图片背景模糊效果

    iOS 图片背景模糊效果 1.使用CoreImage中的模糊滤镜 原始效果图如下: CoreImage的实现: - (void)viewDidLoad { [super viewDidLoad]; / ...

  7. iOS 图片压缩方法

    iOS 图片压缩方法 两种图片压缩方法 两种压缩图片的方法:压缩图片质量(Quality),压缩图片尺寸(Size). 压缩图片质量 NSData *data = UIImageJPEGReprese ...

  8. css3图片模糊过滤效果

    css3图片过滤效果,鼠标放上后其它图片模糊,鼠标所在位置的图片是清淅的,有效索引出当前的图片,对图片的模糊处理是本特效的亮点,你完全可以将模糊的效果应用于其它的图片特效中,你同样也可借此代码研究一下 ...

  9. jquery mobile上传图片完整例子(包含ios图片横向问题处理和C#后台图片压缩)

    上传图片本身是个基本的小功能,但是到了移动端就不那么简单了,相信找到这篇文章的你一定有深深的同感. 本文实例是:在(移动端)页面中点击图片,然后选择文件,然后保存.使用Asp.net 难点一:后台获取 ...

随机推荐

  1. jQuery选择器全解

    本篇介绍jQuery的选择器,jQuery选择器按照功能上分为"选择"和"过滤",并且是配合使用的.过滤的主要作用是从前面选定的选择器中选择的内容重进行筛选. ...

  2. 【C#】.NET中设置代理服务器浏览网页的实现--转载

    目前很多种类的浏览器中都有代理服务器的设置,用户可以通过浏览器自定义更换自己的IP,实现在线代理翻(河蟹)墙浏览网页. 而在.NET中,亦可以通过调用API函数InternetSetOption来实现 ...

  3. tomcat启动报错总结

    错误一 webapps\ROOT does not exist or is not a readable directory 错误原因:在tomcat的server.xml的context中配置了不存 ...

  4. Java protobuf框架使用向导

    ProtoBuf,全称是Protocol Buffers, 它是谷歌内部用的一种高效的.可扩展的对结构化数据进行编码的格式规范.谷歌自己内部很多程序之间的通信协议都用了ProtoBuf. 下面介绍的是 ...

  5. Backbone的id

    id 在model.attributes中,需要用户自行定义,可不定义,获取方法:model.get('id') cid collection中每个model都有的属性,由backbone自动生成,获 ...

  6. php 文件操作中几种方法整理

    1.获取文件夹下所有文件个数 echo ShuLiang("../0503lianxi"); function ShuLiang($filename) { if(is_dir($f ...

  7. dede分页

    {dede:list pagesize ='} <div class="intro clearfix"> <ul class="pic"> ...

  8. LINUX 循环fork()

    #include <sys/types.h> #include <unistd.h> int main() {            for(int i = 0; i < ...

  9. 关于js事件冒泡和时间捕获

    (1)冒泡型事件:事件按照从最特定的事件目标到最不特定的事件目标(document对象)的顺序触发. IE 5.5: div -> body -> document IE 6.0: div ...

  10. Java基础语法学习(1)switch...case

    switch...case的标准语法 switch(待选择的变量) { case 值1:语句1; break; case 值2:语句2: break; ....... case 值n:语句n; bre ...