3

我的应用程序会截取整个网页。当它保存到相册时,图像质量会受到一些影响,并且静止图像上的文字模糊且难以阅读。我发现这个解决方案在保存到相册时承诺具有更好的质量,但它似乎仍然不能完全接受。有没有比这更好的方法来将 UIImage 保存到相册而质量损失非常小?谢谢。

UIImage* img = [UIImage imageWithCGImage:screenshotImage.CGImage];
NSData* imdata =  UIImagePNGRepresentation ( img );
UIImage* image = [UIImage imageWithData:imdata]; // wrap UIImage around PNG representation

UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
4

1 回答 1

0

除了查看图像质量设置之外,您还需要了解哪种图像格式最适合存储不同类型的图像。

对于真实世界的图像,例如用相机拍摄的图像,我更喜欢 JPG。JPEG 在保持高图像质量同时实现良好压缩方面做得更好。

如果您正在截取图像的许多部分颜色相同的屏幕截图(例如此网页或您的编程编辑器),那么我更喜欢使用 PNG。PNG 将保存图像,而不会产生大量经常出现在 JPEG 中的脏东西,但仍然可以为这些类型的图像实现良好的压缩比。

上述原因与每次使用的压缩算法有关(JPEG 是 FFT;PNG 是 DEFLATE)。尝试更改图像类型和质量设置,看看是否会有所不同。

于 2012-09-11T04:23:32.130 回答