如何在iOS中调整PNG图像文件的大小而不改变其尺寸?

如何在iOS中调整PNG图像文件的大小而不改变其尺寸?,ios,Ios,如何在iOS中更改PNG图像的大小而不更改其尺寸?在iOS中可能吗?我们有默认的方法来实现这一点,但它只适用于JPEG图像,是否有任何默认的压缩方法来压缩PNG图像文件 CGFloat compression = 0.5f; CGFloat maxCompression = 0.1f; int maxFileSize = 250*1024; NSData *imageData = UIImageJPEGRepresentation(thmImageView.image, compressio

如何在iOS中更改PNG图像的大小而不更改其尺寸?在iOS中可能吗?我们有默认的方法来实现这一点,但它只适用于JPEG图像,是否有任何默认的压缩方法来压缩PNG图像文件

 CGFloat compression = 0.5f;
CGFloat maxCompression = 0.1f;
int maxFileSize = 250*1024;

NSData *imageData = UIImageJPEGRepresentation(thmImageView.image, compression);

while ([imageData length] > maxFileSize && compression > maxCompression)
{
    compression -= 0.1;
    imageData = UIImageJPEGRepresentation(thmImageView.image, compression);
}UIImage *image = [UIImage imageWithData:data];

您将获得高达20-40kb的压缩图像大小。它适用于png,也可以尝试一次。

您想更改图像的实际大小,还是只想在应用程序中显示较小的图像?我想更改其实际大小。例如,我有一个大小为1MB、尺寸为320*120的图像,我想将其转换为小于1MB、尺寸为320*120的图像。与JPG不同,没有API可以更改PNG的压缩级别。因此,如果不更改PNG的尺寸,就无法创建文件大小较小的PNG。请记住,PNG是一种无损图像格式。JPG并非如此,这就是为什么JPG图像可以以牺牲质量为代价进行越来越多的压缩。