IOS 图片模糊处理 ------ 直接代码 复制出去就可用 值得标记
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 图片模糊处理 ------ 直接代码 复制出去就可用 值得标记的更多相关文章
- ios图片轮播效果
代码地址如下:http://www.demodashi.com/demo/11959.html ImageCarousel 简单封装的图片轮播器 内存过大由于我加载的图片分辨率较高(4k) 文件目录 ...
- iOS 图片部分模糊,类似于美图秀秀
代码地址如下:http://www.demodashi.com/demo/14277.html 演示效果 演示效果 代码结构 项目结构截图如下: 该模块的核心源码部分为 MBPartBlurView, ...
- wps 图片代码 复制 粘贴
<table><tr><td><img src="C:\Users\Administrator\Desktop\QQ截图20160921180946 ...
- 实现iOS图片等资源文件的热更新化(三):动态的资源文件夹
简介 此文,将尝试动态从某个不确定的文件夹中加载资源文件.文章,会继续完善自定义的 imageNamed 函数,并为下一篇文章铺垫. 这么做的意义 正如我们经常所说的那样,大多数情景知道做事的意义往往 ...
- 大屏iPhone的适配 +iOS 图片尺寸要求
摘自:http://blog.ibireme.com/2014/09/16/adapted_to_iphone6/ 苹果公司官网设计介绍到:Retina显示屏的超高像素密度已超过人眼能分辨的范围.Re ...
- iOS 图片背景模糊效果
iOS 图片背景模糊效果 1.使用CoreImage中的模糊滤镜 原始效果图如下: CoreImage的实现: - (void)viewDidLoad { [super viewDidLoad]; / ...
- iOS 图片压缩方法
iOS 图片压缩方法 两种图片压缩方法 两种压缩图片的方法:压缩图片质量(Quality),压缩图片尺寸(Size). 压缩图片质量 NSData *data = UIImageJPEGReprese ...
- css3图片模糊过滤效果
css3图片过滤效果,鼠标放上后其它图片模糊,鼠标所在位置的图片是清淅的,有效索引出当前的图片,对图片的模糊处理是本特效的亮点,你完全可以将模糊的效果应用于其它的图片特效中,你同样也可借此代码研究一下 ...
- jquery mobile上传图片完整例子(包含ios图片横向问题处理和C#后台图片压缩)
上传图片本身是个基本的小功能,但是到了移动端就不那么简单了,相信找到这篇文章的你一定有深深的同感. 本文实例是:在(移动端)页面中点击图片,然后选择文件,然后保存.使用Asp.net 难点一:后台获取 ...
随机推荐
- java对像序列化
package cn.stat.p2.demo; import java.io.FileInputStream; import java.io.FileNotFoundException; impor ...
- 自定义函数标签(JSTL)
创建自定义函数标签步骤: 1.创建类,并且方法只能是静态 public static void operation(calculator cal) 2.书写tld <taglib xmlns=& ...
- IE6 png 透明 (三种解决方法)(转来的哦)
FF和IE7已经直接支持透明的png图了,下面这个主要是解决IE6下透明PNG图片有灰底的 ====================================================== ...
- C程序设计语言练习题1-12
练习1-12 编写一个程序,以每行一个单词的行驶打印其输入. 代码如下: #include <stdio.h> // 包含标准库的信息. int main() // 定义名为main的函数 ...
- WebVR
WebVR 主要面向Web前端工程师,需要一定Javascript及three.js基础:本文主要分享内容为基于three.js开发WebVR思路及碰到的问题:有兴趣的同学,欢迎跟帖讨论. 目录:一. ...
- QT creator中使用opencv采集摄像头信息
之前在QT creator上成功编译了opencv,由于课题需要,需要采集摄像头的信息.故搜集了网上的一些资料,依葫芦画瓢的照着做了一下,终于简单的成功采集了信息. 打开QTcreator,新建一个w ...
- 安卓仿制新浪微博(一)之OAuth2授权接口
这里需要用到请求授权(authorize)以及获取授权(access_token) 第一步: 将新浪的sdk放在src/libs下面 二: //创建方法实现authorize public void ...
- android textview 行间距
设置行间距:android:lineSpacingExtra 设置行间距的倍数:android:lineSpacingMultiplier 如下:设置行间距为3,行间距倍数为1.5 <TextV ...
- Keil中LIB库的作用、生成与调用
LIB库有什么用,一个简单的例子就是Silicon Labs为C8051F单片机USB提供的USBXpress LIB库了,如USB发送数据.接收数据等,都是通用性很强的函数,但因为保密的原因,这个函 ...
- How can I let the compiled script depend on something dynamic
Compile your script with /DNAME=value or /X"nsis command" passed on to makensis.exe as com ...