如果我们使用 UIImagePNGRepresentation 转换 JPEG 文件,那么新的文件大小会更大。如果我们使用 UIImagePNGRepresentation 转换 PNG 文件,那么新文件的大小会更小。
为什么在这里将 JPEG 转换为 PNG 成本更高?
谢谢吉腾
要减小图像大小,您可以使用以下代码
CGFloat compression = 222.0f;
CGFloat maxCompression = 202.1f;
int maxFileSize = 160*165; //fill your size need
NSData *imageDat = UIImageJPEGRepresentation(image.image, compression);
while ([imageDat length] > maxFileSize && compression > maxCompression)
{
compression -= 0.1222;
imageDat = UIImageJPEGRepresentation(decodedimage.image, compression);
}
NSLog(@"image compressed success");
[image setImage:[UIImage imageWithData:imageDat]];//image is my UIImageview
跳这个有帮助!