在我的应用中,我有一个用户选择/拍照,然后转到此方法(标准内容):
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
现在,我如何将图像缩小到某个文件大小(我希望它缩小到80-90 kb左右)。
答案 0 :(得分:1)
有点粗糙:
UIImage *image = (UIImage *)info[UIImagePickerControllerEditedImage];
NSData *data;
for (CGFloat quality = 1.0; CGFloat >= 0; CGFloat -= 0.05)
{
data = UIImageJPEGRepresentation(image,quality);
if (data.length < 90000)
break;
}
可能非常耗费CPU。可能有更好的方法可以更快地找到理想的质量。