将来跳槽用

iOS图片处理小结

2017-03-30  本文已影响0人  iOS谢先森

我们常用的图片格式可以分为bmp,jpg,png,gif,webp,其中bmp常用语安卓端开发,iOS常用的是jpg和png,苹果默认是不支持gif图片的,我们拉取gif得到的是一帧帧的图片但是我们可以在工程中用代码生成gif图片,webp是google推出的一种新的图片格式,它的有点是可以将相同质量的图片大小缩减50%甚至更多,webp算法比较复杂,消耗内存较多,但基于其存储占用优势,以后可能会成为主流格式。下边先从jpg和png谈起,iOS中我们常用png,因为清晰度相同的两张图片,png是无损的,所占空间更小。

一、png和jpg相互转化

//jpg转化png

-(void)jpgToPng{

UIImage * image = [UIImage imageNamed:@"1.jpg"];

NSData * data = UIImagePNGRepresentation(image);

UIImage * pngImage =[UIImage imageWithData:data];

UIImageWriteToSavedPhotosAlbum(pngImage, nil, nil, nil);

}

//jpg转化jpg

-(void)jpgTojpg{

UIImage * image = [UIImage imageNamed:@"1.jpg"];

//后一个参数越小,则生成的图片越小,越模糊

NSData * data = UIImageJPEGRepresentation(image, 0.5);

UIImage * jpgImage =[UIImage imageWithData:data];

UIImageWriteToSavedPhotosAlbum(jpgImage, nil, nil, nil);

}

//png转化png

-(void)pngToJpg{

UIImage * image = [UIImage imageNamed:@"2.png"];

NSData * data = UIImageJPEGRepresentation(image, 0.5);

UIImage * jpgImage =[UIImage imageWithData:data];

UIImageWriteToSavedPhotosAlbum(jpgImage, nil, nil, nil);

}

二、gif图片分解

gif图片分解的步骤为

1.拿到gif数据

2.分帧

3.将单帧数据转化为图片

4.保存 首先我们需要先引入头文件

不知道为什么代码粘贴不进来(截图算了),需要demo的可移步到文末。

3.创建gif图片

别忘了引入头文件(受不鸟了,代码还是不能复制)

相关代码下载链接:下载链接

上一篇 下一篇

猜你喜欢

热点阅读