我想对用户库中的照片应用过滤器,然后将其写回磁盘。我正在使用UIImageJPEGRepresentation
. 此函数采用0.0 和 1.0 之间的一个UIImage
和一个值。compressionQuality
因为想保留原画质,所以设置为1.0。但我发现这实际上创建了一个文件大小比原始文件更大的图像文件,甚至更大一些。我注意到在 Apple 的 Sample Photo Editing Extension 应用程序中,他们总是将质量设置为 0.9。我试过了,它确实输出了接近原始照片文件大小的文件大小。这对我来说没有意义。有人可以解释一下吗?始终使用 0.9 是否合适?iOS 相机是否使用该值对其进行压缩,因此 0.9 是原始质量?或者为什么 0.9 实际上不是 1.0,如果没有的话'
NSData *renderedJPEGData = UIImageJPEGRepresentation(image, 0.9f);