了解不同分辨率屏幕的图像大小
Understanding Image Size for Different Resolution Screens
我很难将@1x、@2x 和@3x 的图像大小的所有信息放在一起。我一直在 XCode 中使用场景编辑器,场景大小为 1334x750(iPhone 6 屏幕的像素尺寸)。因此,当我为该场景中的精灵调整图像大小时,我应该为 @2x 使用该大小吗?
根据我在文档中读到的内容,CGSize 使用的是点,而不是像素,所以如果我有一个 CGSize(width: 50, height: 50) 的图像,这是否与场景中的场景大小无关编辑?
底线问题:CGSize 尺寸如何转化为我如何导出以像素为单位的@1x、@2x 和@3x 图像以及导出时 PPI 应该是多少?
这个概念很简单。 Storyboard 或 Interface Builder 中的大小应该是 @1x 格式的资产大小。
视网膜显示(或 iPhone 6+ @3x 大小)并不意味着你比以前多 space,这意味着你可以在其中绘制 2(或 3)个像素你之前画了1张
所以对于一个 50x50 像素的图像视图,cou 应该有 3 个资源:
- 图片@1x.png(50x50 像素)
- 图片@2x.png(100x100 像素)
- 图片@3x.png ( 150x150 像素)
假设您在资产库中创建了一个包含 3 组相同图像的图像,@1x.png
大小 50x50 pixels
,@2x.png
大小 100x100 pixels
和 @3x.png
尺寸150x150 pixels
。
你不需要担心在你的故事板中使用哪一个(因为故事板自动使用@1x.png),以及哪个用于目标设备,如 iPhone6,或iphone7,或iPad(因为默认编程所有硬件在@1x.png、@2x.png和@3x.png中找出它们相对所需图像的像素)
您需要学习进一步的说明Auto layout Programing Guide
您还可以查看他们的苹果关于自动布局的教程视频。
自动布局的奥秘part1
自动布局的奥秘part2
Xcode 可以处理矢量图像,因此如果您能够将图像导出为 PDF,则您可以忘记 @2X 和 @3X 图像,例如在 Sketches
导出面板中,导出格式的选项之一是 PDF,因此创建您的作品 @1X 并导出为 PDF,然后在 Xcode 中,当您将图像添加到 Assets.xcassets 时,您可以将图像 Scales
属性设置为 Single Scale
。 Xcode 将在构建时从矢量 PDF 生成所需的 @2X 和 @3X 图像。
@1x
和 @2x
用于与 iPhone 4 出来时视网膜图形变化有关。
iPhone 3GS 为 320x480,iPhone 4 为 640x960。这意味着每英寸的点数完全相同,但 ppi 翻了一番,因此 @2x
。当 iPhone 5 出来的时候,唯一改变的是高度,所以宽度的 ppi 是一样的,这里没有问题。
然后我们打6和6+。在这一点上,苹果说搞砸了,尽量保持与以前 iPhones 相关的 ppi,而不保留以前的 iphone 可用区域,或者为更大的设备提供更大的屏幕像素。现在@2x
已经失去了原来的意义
但是,为了真正让我们失望,他们制作了 iPhone SE,它回到了 iPhone 5 的 ppi 屏幕尺寸,所以 @2x
再次有意义。
基本上,在考虑@2x 图形时,请考虑第一个 iPhone 分辨率大小。
现在,您可以做出选择。您可以为您的应用提供 more/less 可用区域,您可以将额外的可用区域黑框化,或者由于游戏像素不再是 1:1 屏幕像素,您可以缩放并采取某种质量损失。
我很难将@1x、@2x 和@3x 的图像大小的所有信息放在一起。我一直在 XCode 中使用场景编辑器,场景大小为 1334x750(iPhone 6 屏幕的像素尺寸)。因此,当我为该场景中的精灵调整图像大小时,我应该为 @2x 使用该大小吗?
根据我在文档中读到的内容,CGSize 使用的是点,而不是像素,所以如果我有一个 CGSize(width: 50, height: 50) 的图像,这是否与场景中的场景大小无关编辑?
底线问题:CGSize 尺寸如何转化为我如何导出以像素为单位的@1x、@2x 和@3x 图像以及导出时 PPI 应该是多少?
这个概念很简单。 Storyboard 或 Interface Builder 中的大小应该是 @1x 格式的资产大小。
视网膜显示(或 iPhone 6+ @3x 大小)并不意味着你比以前多 space,这意味着你可以在其中绘制 2(或 3)个像素你之前画了1张
所以对于一个 50x50 像素的图像视图,cou 应该有 3 个资源: - 图片@1x.png(50x50 像素) - 图片@2x.png(100x100 像素) - 图片@3x.png ( 150x150 像素)
假设您在资产库中创建了一个包含 3 组相同图像的图像,@1x.png
大小 50x50 pixels
,@2x.png
大小 100x100 pixels
和 @3x.png
尺寸150x150 pixels
。
你不需要担心在你的故事板中使用哪一个(因为故事板自动使用@1x.png),以及哪个用于目标设备,如 iPhone6,或iphone7,或iPad(因为默认编程所有硬件在@1x.png、@2x.png和@3x.png中找出它们相对所需图像的像素)
您需要学习进一步的说明Auto layout Programing Guide 您还可以查看他们的苹果关于自动布局的教程视频。
自动布局的奥秘part1
自动布局的奥秘part2
Xcode 可以处理矢量图像,因此如果您能够将图像导出为 PDF,则您可以忘记 @2X 和 @3X 图像,例如在 Sketches
导出面板中,导出格式的选项之一是 PDF,因此创建您的作品 @1X 并导出为 PDF,然后在 Xcode 中,当您将图像添加到 Assets.xcassets 时,您可以将图像 Scales
属性设置为 Single Scale
。 Xcode 将在构建时从矢量 PDF 生成所需的 @2X 和 @3X 图像。
@1x
和 @2x
用于与 iPhone 4 出来时视网膜图形变化有关。
iPhone 3GS 为 320x480,iPhone 4 为 640x960。这意味着每英寸的点数完全相同,但 ppi 翻了一番,因此 @2x
。当 iPhone 5 出来的时候,唯一改变的是高度,所以宽度的 ppi 是一样的,这里没有问题。
然后我们打6和6+。在这一点上,苹果说搞砸了,尽量保持与以前 iPhones 相关的 ppi,而不保留以前的 iphone 可用区域,或者为更大的设备提供更大的屏幕像素。现在@2x
已经失去了原来的意义
但是,为了真正让我们失望,他们制作了 iPhone SE,它回到了 iPhone 5 的 ppi 屏幕尺寸,所以 @2x
再次有意义。
基本上,在考虑@2x 图形时,请考虑第一个 iPhone 分辨率大小。
现在,您可以做出选择。您可以为您的应用提供 more/less 可用区域,您可以将额外的可用区域黑框化,或者由于游戏像素不再是 1:1 屏幕像素,您可以缩放并采取某种质量损失。