我正在开发一个有图标的程序。我一直在想我是否真的需要使用矢量图标(因为它们很难找到),或者我可以只使用更大的图标,例如 256x256 图标(最大 64px 大小)?
2 回答
好吧,iOS 图标不是矢量图形。它们是 PNG 图像,使用以下分辨率:
iPhone non-retina: 57 x 57
iPhone retina: 114 x 114
iPad non-retina: 72 x 72
iPad retina: 144 x 144
此外,如果您为 AppStore 开发,则必须包含一个 iTunesArtwork 文件,该文件也是 512 x 512 像素的 PNG(与您的应用程序是否为视网膜这一事实无关)。
如果要显示 64 像素的图像,请使用 64 像素的图标。一旦开始缩放,您将失去一些质量(尽管按 2 的幂进行缩放并不像任意缩放因子那样糟糕)
但是,当您的尺寸超过 64 像素时,缩放效果变得越来越不明显,因此您可以开始使用缩放图标而不是依赖于设备的分辨率,而不必担心质量损失。
最主要的是绘制图标的主要特征以匹配您希望支持的最低公分母分辨率。例如,如果您打算在某些设备上使用 32x32 图标,而在其他设备上使用 64x64,则在 32x32 图标中将线条设置为 1 像素粗,这相当于在 64x64 上使用 2 像素粗。这样,64x64 将看起来像 32x32 的“更清晰”版本,而不是线条更细或 32x32 图标“模糊”(例如,由于抗锯齿,64 图像上的细黑线变成更粗的灰线) 32)。
通常,您还应该以高分辨率设计图形(例如,“视网膜”分辨率是一种愚蠢的营销策略,只有真正“视网膜”分辨率的四分之一左右 - 您可以确定屏幕分辨率将再次翻倍,就像 HDTV已经开始被 4K 和 8K 取代)。因此,我建议您对主图像使用 256 或 512 分辨率(但仍将其功能基于 32x32 或 64x64 网格),然后按比例缩小此图像,然后对其进行触摸以在较低分辨率下获得良好的质量。这样,如果(何时)您需要高分辨率的图标,则不必从头开始重新绘制它。(如果可能,将您的图标设计为矢量艺术,然后以您需要的各种像素分辨率重新导出它)
此外,如果您避免高对比度边缘,您的图标将更容易缩放(因为向下缩放高对比度边缘通常会导致模糊的抗锯齿结果,除非边缘与较低分辨率的像素边界完美对齐)。所以一个典型的软渐变苹果或安卓图标将比典型的硬高对比度win8线条图缩小得多)
最后请记住,仅仅因为您今天的设备使用 32x32 和 64x64,并不意味着您不会发现自己在未来 6-12 个月内不会移植到图标大小完全不同的设备(例如 57x57、72x72等)并且重新缩放几乎不会起作用。在这些情况下,源图像越大,缩小它的效果就越好(即,将 512x512 缩小到 72 通常会比将 128x128 缩小到 72 得到更好的结果)。