解决UIImage在压缩时失真问题,压缩图片的大小

原文链接

将scaleToSize的大小设置为一定的高宽比,

例如我是这样设置,效果不错;

 imageToShare = [selfOriginImage:imageToSharescaleToSize:CGSizeMake(mytableView.frame.size.width*0.8,mytableView.frame.size.height*0.8)];

-(UIImage*) OriginImage:(UIImage*)image scaleToSize:(CGSize)size

{

    // 下面方法,第一个参数表示区域大小。第二个参数表示是否是非透明的。如果需要显示半透明效果,需要传NO,否则传YES。第三个参数就是屏幕密度了

    UIGraphicsBeginImageContextWithOptions(size, NO, [UIScreen mainScreen].scale);

    [imagedrawInRect:CGRectMake(0,0, size.width, size.height)];

    UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();

    UIGraphicsEndImageContext();

    returnscaledImage;  //返回的就是已经改变的图片

}

你可能感兴趣的:(解决UIImage在压缩时失真问题,压缩图片的大小)