圖片的壓縮實際上是倆概念,
一、是 「壓」 文件體積變小,可是像素數不變,長寬尺寸不變,那麼質量可能降低,
二、是 「縮」 文件的尺寸變小,也就是像素數減小。長寬尺寸變小,文件體積一樣會減少。web
這個 UIImageJPEGRepresentation(image, 0.0),是1的功能。
這個 [sourceImage drawInRect:CGRectMake(0,0,targetWidth, targetHeight)] 是2的功能。spa
因此,這倆你得結合使用來知足需求,否則你一味的用1,致使,圖片模糊的不行,可是尺寸仍是很大。orm
+(NSData *)imageData:(UIImage *)myimage圖片
{ci
NSData *data=UIImageJPEGRepresentation(myimage, 1.0);get
if (data.length>100*1024) {it
if (data.length>1024*1024) {//1M以及以上io
data=UIImageJPEGRepresentation(myimage, 0.1);form
}else if (data.length>512*1024) {//0.5M-1Mtransform
data=UIImageJPEGRepresentation(myimage, 0.5);
}else if (data.length>200*1024) {//0.25M-0.5M
data=UIImageJPEGRepresentation(myimage, 0.9);
}
}
return data;
}