iOS - 图片压缩

1,图片尺寸压缩

-(UIImage *) imageCompressForWidth:(UIImage *)sourceImage targetWidth:(CGFloat)defineWidth//图片压缩,第二个参数为最终宽度
{
    CGSize imageSize = sourceImage.size;
    CGFloat width = imageSize.width;
    CGFloat height = imageSize.height;
    CGFloat targetWidth = defineWidth;
    CGFloat targetHeight = (targetWidth / width) * height;
    UIGraphicsBeginImageContext(CGSizeMake(targetWidth, targetHeight));
    [sourceImage drawInRect:CGRectMake(0,0,targetWidth,  targetHeight)];
    UIImage* newImage =UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return newImage;
}

方法举例:

  UIImage *newImage=[selfimageCompressForWidth:imagetargetWidth:image.size.width/2];

2,尺寸不变,大小压缩

举例:ASI上传图片时,

NSData *data = UIImagePNGRepresentation(image);//未压缩
NSData *data =UIImageJPEGRepresentation(image,0.5);//压缩

3,QBImagePickerController多选照片出现的问题

QBImagePickerController.m中方法
- (NSDictionary *)mediaInfoFromAsset:(ALAsset *)asset

3.1,取照片后自动调整为尺寸不超过屏幕宽高:

    [mediaInfo setObject:[UIImageimageWithCGImage:[[assetdefaultRepresentation] fullScreenImage]] forKey:@"UIImagePickerControllerOriginalImage"];

3.2,取照片后为照片原图:

        [mediaInfo setObject:[UIImageimageWithCGImage:[[assetdefaultRepresentation] fullResolutionImage]] forKey:@"UIImagePickerControllerOriginalImage"];

3.3,3.2中照片较大会出现左转90度,解决方法为:

    [mediaInfo setObject:[UIImageimageWithCGImage:[[assetdefaultRepresentation] fullResolutionImage]
                                             scale:[assetdefaultRepresentation].scale
                                       orientation:(UIImageOrientation)[assetdefaultRepresentation].orientation]forKey:@"UIImagePickerControllerOriginalImage"];

3中以上三点为并列语句。

摘自:http://blog.csdn.net/lichuanliangios/article/details/51488487

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概要: 图片的两种压缩方法1.1 压缩图片质量1.2 压缩图片尺寸压缩图片使图片文件小于指定大小2.1 压缩图片质...
    leonardni阅读 65,880评论 40 206
  • 两种图片压缩方法 两种压缩图片的方法:压缩图片质量(Quality),压缩图片尺寸(Size)。 压缩图片质量 N...
    喵喵嘟噜啡阅读 2,029评论 0 9
  • 好习惯之先放demo, https://github.com/ssj1314/SSJImage-Scan 好用的话...
    五蕴盛阅读 1,907评论 6 14
  • 最近需要用到图片压缩,本来苹果是有一个图片压缩的方法的,但是函数只能说不是很符合我们现在的需求,尤其是一张几M的图...
    Mr_ZH阅读 1,093评论 0 2
  • 1、确图片的压缩的概念: “压” 是指文件体积变小,但是像素数不变,长宽尺寸不变,那么质量可能下降。“缩” 是指文...
    HOULI阅读 19,094评论 7 34