【发布时间】:2014-10-26 05:08:45
【问题描述】:
是什么使图像成为 1x、2x 或 3x(@1x、@2x、@3x)?如何制作 3x 图像?
【问题讨论】:
标签: swift xcode image uiimageview
是什么使图像成为 1x、2x 或 3x(@1x、@2x、@3x)?如何制作 3x 图像?
【问题讨论】:
标签: swift xcode image uiimageview
iOS 在其坐标系中使用点而不是像素。在最初的非视网膜设备(iPhone、iPhone3G、iPhone3GS、iPad、iPad 2、iPad mini 和早期的 iPod touches)中,坐标系中的一个点映射到设备屏幕上的一个像素。那时,生活很简单,您向应用程序提供映射到磅值大小的图像,一切看起来都很棒。
当 Apple 推出第一款视网膜显示设备(iPhone 4、配备 Retina Display 的 iPad 和 iPod touch 4)时,这些设备的每个点都有 2 个像素。苹果设计了一种巧妙的方法来解决这个问题。程序员只需要在他们的程序中添加第二张分辨率更高的图像,并在名称中添加@2x。无需更改代码。如果您的代码加载了一个名为“house”的图像,iOS 将在非视网膜设备(例如 iPad 2 或原始 iPad mini)上加载“house”,并且它将为视网膜设备使用“house@2x”。 iPhone 6 Plus 的分辨率更高,所以它使用了@3x 版本。
那么是什么使图像@1x、@2x 或@3x?如果您的“房子”图像是 120 x 90 像素,那么您的“house@2x”图像应该是 240 x 180 像素,即每个维度中像素数的两倍(简称“2x”)。 “house@3x”版本应该是 360 x 270(每个维度中像素数的 3 倍)。
您可以确保@2x 和@3x 版本具有更多细节,而不仅仅是更多像素。您可以使用像 Photoshop 或 Pixelmator 这样的程序来创建图像。首先创建图像的非常详细的版本(@3x 版本),然后将其缩小到@2x 分辨率并将该版本保存为@2x 版本。然后再次打开您的@3x 版本并将其缩放到@1x 分辨率并将其保存为您的@1x 版本。 Add all three versions to the Assets Catalog in Xcode,iOS 会为相应的设备加载相应的版本。
【讨论】:
阅读本文以了解不同的分辨率:
http://www.paintcodeapp.com/news/iphone-6-screens-demystified
如果您正在寻找一种廉价且简单的方法来创建图形,可以导出所有三种尺寸,请获取 Sketch 3:
http://bohemiancoding.com/sketch/
使用 Sketch,您可以制作图形,然后立即将其导出为您需要的任何尺寸等级。
以下是更改大小的 Photoshop 分步说明。如果您有矢量图 - 线条和其他形状 - 您可以从任何尺寸开始并增加或减小尺寸。下面的三张照片显示了图像尺寸的增加。如果您有一个像 jpeg 这样的图像,那么您将希望从大开始并在较小的范围内工作以避免失真。
【讨论】:
有很多在线工具,您可以在其中放置最大尺寸 (1024x1024),它会为您生成调整大小的版本。例如https://www.iconcutter.com
【讨论】:
您还可以使用 Prepo mac 应用程序处理 1x、2x 和 3x 等不同尺寸的图像。
您只需添加图片,就可以导出不同尺寸的图片(艺术品)。它还支持应用程序图标。
【讨论】: