由于我被告知当我的项目中只有@2x 表单时,Xcode 会自动将图像缩小到非视网膜,因此似乎没有必要创建另一个图像。这让我创建了没有非视网膜图像的应用程序。
但是最近我讨论了这个问题,并被告知如果我不单独保存非视网膜图像,图像的质量(在非视网膜设备上)将不会那么好。
这是真的?
由于我被告知当我的项目中只有@2x 表单时,Xcode 会自动将图像缩小到非视网膜,因此似乎没有必要创建另一个图像。这让我创建了没有非视网膜图像的应用程序。
但是最近我讨论了这个问题,并被告知如果我不单独保存非视网膜图像,图像的质量(在非视网膜设备上)将不会那么好。
这是真的?
是的,确实如此,质量不会那么好,但出于其他一些原因,仅使用 @2x 也不是一个好主意。
视网膜图像的简单调整大小可能不是保持图像语义的最佳方式。例如,一个图标在@2x 中的正确尺寸可能看起来很棒,但是当尺寸减小时,很难区分图标是什么。这样,您的常规大小的图像可能是一个稍微不同的图标,它的分辨率较低,但更容易确定其含义。
图像在使用时保存在内存中。@2x 图像的分辨率是普通图像的 4 倍,因此将占用大约 x4 的内存。iPad 1 和 3GS 等设备(具有非视网膜显示屏)的内存量有限,而且没有多少空闲空间。因此,视网膜图像将占用更多可用内存,您的应用程序/设备将无法正常运行。
与第 1 点类似,但为使@2x 图像正确适合 1x 屏幕而进行的调整大小非常幼稚,并且没有执行任何采样以使图像看起来不错。例如,当缩小图像时,图像可能非常混叠和粗糙。如果您有一个从@2x 版本派生的常规图像文件,您可以执行自己的采样和分辨率降低方法,以确保它看起来像您想要的那样。
对于我们的 iOS 应用程序,我们有一个(过分)痴迷的设计师,他花了很多时间独立地为视网膜和非视网膜分辨率设计资产,我问他为什么他在每个方面都花这么多时间,而不是基本上“缩小/放大”。他有一些很好的观点,“如果你想让你的资产在视网膜和非视网膜上看起来都很好,你需要一个人来对你的资产路径/轮廓做出明智的决定”。
以一个 57x57 的按钮或图标为例,它有一个 2 像素的外边框、一个 4 像素的白色内边框和一个阴影。如果您只是将其缩放到 114x114,那么这些边框的“路径”或线条将缩放到 4px 和 8px,这可能会导致两个问题
他向我展示了如果你只是放大/缩小资产的样子,而他实际上花时间对其进行微调,这是一个非常显着的差异。他的很多观点都在这篇文章中得到了很好的总结