压缩UIImage

use*_*048 5 iphone objective-c uiimage ios

我需要帮助调整UIImage的大小.

例如:我在UICollection视图中显示很多图像,但这些图像的大小为2到4 MB.我需要压缩或调整这些图像的大小.

我发现了这个:如何在上传到服务器之前压缩/调整iPhone OS SDK上的图像大小?但我不明白如何实现它.

Kun*_*ani 18

不确定是否要调整大小或压缩或两者兼而有之.

以下是压缩的代码:

使用JPEG压缩只需 两个简单的步骤:

1)将UIImage转换为NSData

UIImage *rainyImage =[UImage imageNamed:@"rainy.jpg"];
NSData *imgData= UIImageJPEGRepresentation(rainyImage,0.1 /*compressionQuality*/);
Run Code Online (Sandbox Code Playgroud)

这是有损压缩,图像尺寸减小.

2)转换回UIImage;

UIImage *image=[UIImage imageWithData:imgData];
Run Code Online (Sandbox Code Playgroud)

对于缩放,您可以使用Matteo Gobbi提供的答案.但缩放可能不是最好的选择.您更愿意通过压缩获得实际图像的缩略图,因为缩放可能会使您的图像在视网膜显示设备上看起来很糟糕.