我正在尝试将UIImage
对象保存到设备中的.jpeg文件中我使用的是这个代码:
-(void)saveImageToDocumentsDirectory:(UIImage *)mimage withFileName:(NSString *)fileName
{
UIImageWriteToSavedPhotosAlbum(mimage,nil,nil,nil);
NSData *dataForJPEGFile = UIImageJPEGRepresentation(mimage, 1.0);
NSError *error2 = nil;
if (![dataForJPEGFile writeToFile:[self getDirectoryFilePath:fileName] options:NSAtomicWrite error:&error2])
{
return;
}
}
它将保存.jpeg类型的图像,但与UIImageWriteToSavedPhotosAlbum(mimage,nil,nil,nil)
方法相比,它占用了太多内存,后者以.jpeg类型和相同质量保存相同的图像对象。
我的问题是为什么。。??
您将质量设置为非常高(1.0),我想0.6或0.7对于我在某处阅读的jpeg文件来说已经足够了。
NSData *dataForJPEGFile = UIImageJPEGRepresentation(mimage, 0.65);
也许你可以根据你的应用程序使用情况找到合适的质量,对我来说,有时0.5就足够了。