-
(UIImage )zipNSDataWithImage:(UIImage )sourceImage{
//进行图像尺寸的压缩
CGSize imageSize = sourceImage.size;//取出要压缩的image尺寸
CGFloat width = imageSize.width; //图片宽度
CGFloat height = imageSize.height; //图片高度
//1.宽高大于1280(宽高比不按照2来算,按照1来算)
if (width>1280||height>1280) {
if (width>height) {
CGFloat scale = height/width;
width = 1280;
height = widthscale;
}else{
CGFloat scale = width/height;
height = 1280;
width = heightscale;
}
//2.宽大于1280高小于1280
}else if(width>1280||height<1280){
CGFloat scale = height/width;
width = 1280;
height = widthscale;
//3.宽小于1280高大于1280
}else if(width<1280||height>1280){
CGFloat scale = width/height;
height = 1280;
width = heightscale;
//4.宽高都小于1280
}else{
}
UIGraphicsBeginImageContext(CGSizeMake(width, height));
[sourceImage drawInRect:CGRectMake(0,0,width,height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();//进行图像的画面质量压缩
NSData data=UIImageJPEGRepresentation(newImage, 1.0);
if (data.length>1001024) {
if (data.length>10241024) {//1M以及以上
data=UIImageJPEGRepresentation(newImage, 0.1);
}else if (data.length>5121024) {//0.5M-1M
data=UIImageJPEGRepresentation(newImage, 0.2);
}else if (data.length>200*1024) {
//0.25M-0.5M
data=UIImageJPEGRepresentation(newImage, 0.3);
}
}
return [UIImage imageWithData:data];
}
iOS 图片压缩
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1 图片处理 1.1 编辑图片的几个方法 第一种 先用UIImage对象加载一张图片 然后转化成CGImageRe...