对于任何给定的文件数据大小,我希望能够调整(或压缩) UIImage 的大小以适应该数据限制。这个问题不是关于如何调整大小或如何检查文件大小......它是关于一种以高性能方式获得它的算法。
已经在这里搜索,我发现这个线程讨论了以线性或二进制算法降低图像 jpeg 质量。这不是很高效,最多需要几十秒。
我在 iOS 上工作,所以图像可以接近 10MB(来自 iPhone 4S)。我的目标虽然可变,但目前是 3145728 字节。
我目前正在使用UIImageJPEGRepresentation
压缩一点,但要达到我的低目标,对于这么大的照片,我似乎不得不损失很多质量。UIImage
大小和NSData
大小之间有关系吗?是否有一些功能我可以说:
area * X = dataSize
...并解决比例因子,以便我可以一次性调整大小?