我将保存从用户库中检索到的图像,假设图像被裁剪后为 300 x 300。我是否需要将视网膜和非视网膜图像直接保存到文档中(即 150 x 150 和 (300 x 300)?
这似乎是不必要的,因为 iPhone 的显示屏要么是视网膜,要么是非视网膜。检查视网膜显示器是否更有效,并且仅在存在时保存较大的图像(如果可能)?
我只是想确保我的解决方案不会忽略某些东西。
我将保存从用户库中检索到的图像,假设图像被裁剪后为 300 x 300。我是否需要将视网膜和非视网膜图像直接保存到文档中(即 150 x 150 和 (300 x 300)?
这似乎是不必要的,因为 iPhone 的显示屏要么是视网膜,要么是非视网膜。检查视网膜显示器是否更有效,并且仅在存在时保存较大的图像(如果可能)?
我只是想确保我的解决方案不会忽略某些东西。
仅仅因为他们现在拥有非视网膜设备并不意味着他们总是会这样做。他们有一天会升级,并且可能会带来您的应用程序数据。
此外,对于拥有多台设备的用户,您应该在所有设备之间同步这些图像(使用 iCloud)。
由于目前出售的几乎所有设备都是视网膜,我只会保存视网膜图像。不要为非视网膜版本而烦恼,让图像绘制 API 为您处理调整大小。
尝试各种调整大小/抗锯齿算法。有些比其他更快,并且调整到正好一半宽度/高度是一种特殊情况,其中低质量/快速调整大小算法看起来与高质量/慢速算法一样好甚至更好。
如果在非视网膜硬件上绘制视网膜图像会导致性能或内存问题(通常不会),那么您可以将图像调整为较小的尺寸并将较小的图像保留在 RAM 中。调整大小比从闪存读取要快得多,因此这不会减慢速度。