2

当您使用 iPhone 照片库选择要通过电子邮件发送的图像时,您可以选择图像大小(低、中、高)。我的问题是:它是如何计算最终图像大小的?我正在尝试做类似的事情,但是如果我实际上使用不同的压缩率(UIImageJPEGRepresentation)进行转换,则过程非常缓慢。我的猜测是,Apple 正在对原始 PNG 大小进行某种近似。有什么想法吗?

慢版本示例:

float size =  [UIImagePNGRepresentation(self.image) length]/1024.0/1024.0;

NSString *high = [NSString stringWithFormat:@"High (%.2f %@)",size > 1 ? size : size * 1024.0,size > 1 ? @"MB" : @"KB"];

size =  [UIImageJPEGRepresentation(self.image,0.9) length]/1024.0/1024.0;

NSString *medium = [NSString stringWithFormat:@"Medium (%.2f %@)",size > 1 ? size : size * 1024.0,size > 1 ? @"MB" : @"KB"];

等等

4

0 回答 0