iOS图片压缩

很多时候我们需要用到图片,但是图片太大有时候会带来一些问题,这就要我们把图片压缩还要保持原图片的样

废话不多说,直接上代码

+ (UIImage*)compressImageWithImage:(UIImage*)image compressionQuality:(CGFloat)compressionQuality{

    NSData *imageData = [[NSData alloc] initWithData:UIImageJPEGRepresentation(image, compressionQuality)];  //1 根据图片和压缩倍率得到图片的data模式数据

    NSLog(@"压缩前的大小=%ldkb",imageData.length);                                                                                         //2 输出一下压缩之前的图片大小

    NSInteger length = [imageData length] / 1000;                                                                                              //3 自定义最大压缩倍率(这里设置的1000)

    NSLog(@"压缩后的大小=%ldkb", length);                                                                                                         //4 输出一下压缩后的大小

    UIImage *newImage = [[UIImage alloc] initWithData:imageData];                                                                  //5  把压缩后data模式的数据转化成图片

    return newImage;                                                                                                                                         //6 返回已经压缩好了的图片

}

其中第一个参数是 image 就是你需要压缩的那张图片  第二个参数是compressionQuality 是压缩倍率,可以传0---1之间的数值,其中0的压缩倍率最高,1的压缩倍率最低

你可能感兴趣的:(iOS图片压缩)