我有一個非常奇怪的問題... 在我的iPhone應用程序,用戶可以打開一個圖像從相機膠捲,在我的例子中,一個 壁紙1920 x 1080像素(72 dpi)。保存UIImage與72 dpi(視網膜模擬器保存144 dpi)
現在,想要調整圖像的寬度來調整圖像的寬度。 1024 px:
+ (UIImage *)imageWithImage:(UIImage *)image scaledToSize:(CGSize)newSize {
UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
[image drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
NSLog(@"New image has w=%f, h=%f", newImage.size.width, newImage.size.height);
return newImage;
}
隨着日誌消息,我可以檢查,寬度是1024,高度是576.一切都很好!
但現在,我保存在文件夾中的圖片:
NSString *jpgPath = [NSHomeDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"Documents/%@.jpg", uniqueId]];
[UIImageJPEGRepresentation(originalImage, 1.0) writeToFile:jpgPath atomically:YES];
現在一個很奇怪的效果:
一)當我使用的Retina模擬器,保存的圖像在「/用戶/ [ ...]/Library/Application Support/iPhone Simulator/5.1/Applications /[...]/ Documents /「的大小爲1.5 MB,分辨率爲144(!)dpi時的分辨率爲2048 x 1152像素。
b)當我使用標準模擬器時,尺寸爲441 KB,分辨率爲72 dpi時的1024 x 768像素。
如何強制保存72 dpi的UIImage?