iOS两种压缩图片的方法简介

原创 2016年06月01日 23:23:28

这是官方的解释:

UIImagePNGRepresentation(UIImage*__nonnullimage);// return image as PNG. May return nil if image has no CGImageRef or invalid bitmap format

UIImageJPEGRepresentation(UIImage*__nonnullimage,CGFloatcompressionQuality);// return image as JPEG. May return nil if image has no CGImageRef or invalid bitmap format. compression is 0(most)..1(least)

UIIimageJPEGRepresentation方法需要两个参数:图片的引用和压缩系数,而UIImagePNGRepresentation方法仅仅需要一个参数:图片的引用。UIImagePNGRepresentation方法在耗时上比UIImageJPEGRepresentation耗时,图片数据量更大,使用UIImagePNGRepresentation读取照片数据的时候有可能会照成卡顿。两个方法返回的数据都是NSData类型。

例如:

同样是读取摄像头拍摄的图片,UIImagePNGRepresentation(UIImage *image)返回的数据量大小为199K,而UIImageJPEGRepresentation(UIImage *image,1.0)返回的数据量只有140K,比前者少了50多K;而且如果对图片的质量要求不那么高的话,还可以通过设置压缩系数进一步减少数据量,降低压缩系数后UIImageJPEGRepresentation(UIImage *image, 0.5),返回的数据大小只有11K,大大压缩了图片数据量,而且从视图角度看,图片的质量并没有明显降低。所以,在读区图片数据内容的时候,建议优先使用方法UIImageJPEGRepresentation(UIImage *image, CGFloatcompressionQuality)

代码:

NSData *data = nil;

if(!UIImagePNGRepresentation(image)) {

   data =UIImageJPEGRepresentation(image,0.1);

}else{

   data =UIImagePNGRepresentation(image);

}

相关文章推荐

android 图片叠加效果——两种方法的简介与内容

第一种是通过canvas画出来的效果: public void first(View v) { // 防止出现Immutable bitmap passed to Canvas c...
  • gh102
  • gh102
  • 2011年08月25日 20:06
  • 10985

ios 图片压缩的两种方式

工作中遇到需要将图片压缩之后上传的需求。经过多方搜索终于搞定。总结一下备用。第一种方法,基本上是无损压缩(肉眼基本看不出差别,不知到底损失了什么内容)UIImageJPEGRepresentation...
  • it_male
  • it_male
  • 2015年11月03日 10:19
  • 515

java 压缩图片 两种方法

1.纯java 代码完成压缩

(源码)两种上传图片的方法

  • 2013年12月07日 11:37
  • 23.09MB
  • 下载

实现图片加文字简介的两种方式

各种新闻软件都有图片新闻项,点击之后会出现图片加文本简介内容供读者浏览,而且可以左右滑动来切换内容。这里介绍两种方式来实现这种效果。 先上效果图: 《1》采用比较重量级的Fragment和Vi...

MFC制作透明图片的两种方法

  • 2011年05月08日 19:01
  • 538B
  • 下载

flash as3 加载图片的两种方法

  • 2012年01月30日 10:58
  • 4KB
  • 下载

简介:如何利用IndexOf和SubString两种方法处理字符串

平时工作中我们会经常用到字符串处理,这时候,字符串的一些基本操作就会大显身手,这些方法不难入手,但想要取得预期的效果也需要稍动头脑,下面,我将为大家介绍一下string类的常用方法,以及个人使用这些方...
  • w2180z
  • w2180z
  • 2014年02月01日 20:19
  • 552
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS两种压缩图片的方法简介
举报原因:
原因补充:

(最多只允许输入30个字)