视网膜图像的实际像素尺寸(iOS)

时间:2013-07-28 14:48:00

标签: iphone ios objective-c retina-display

在阅读了Apple自己的HIG(特别是“为视网膜创建图像......”部分)并查看类似的答案和建议的博客之后 - 我似乎无法对如何正确设计视网膜图像有很好的解决方法。 / p>

为了更好地解释,让我设置一个场景:

  • 我有一个44 x 44点的UIButton,我在IB中列出。

  • 我去了photoshop,创建了一个44 x 44像素的图像。我保存为image@2x.png

  • 我保存了另一个,没有在文件名上附加@ 2x.png。

  • 在代码中,我执行类似... [UIImage imageNamed:@"image"]

  • 的操作

据我所知,似乎DPI并不重要。我也明白,视网膜图像当然是原始图像的两倍。因此对于上面的场景,image@2x.png应该是 88 x 88像素而不是 44 x 44像素?在[UIImage imageNamed:@"image"]中,我是否需要在图片名称中指定@2x,还是xcode会处理该问题?

按照上面描述的方案,有人可以纠正我确认这是正确的像素尺寸图像吗?

2 个答案:

答案 0 :(得分:2)

您描述的方案是错误的。

这是正确的:

  1. 假设你想要一个44pt x 44pt的按钮放在IB中;
  2. 转到Photoshop,创建一个以@ 2x命名的88px x 88px图像;
  3. 创建另一张图片,44px x 44px,无需添加@ 2x;
  4. 在您的IB或代码中,将图像设置为普通名称,不带@ 2x 在图像名称中。系统将显示正常图像和@ 2x 想象得好。

答案 1 :(得分:1)

要创建IB尺寸为44x44的按钮,您需要两张图像:

  1. Image.png,大小为44x44
  2. Image@2x.png,大小为88x88
  3. 当您使用基本名称

    时,iOS会自动选择正确的文件

    要在代码中加载该图像,只需使用以下行:

    [UIImage imageNamed:@"Image"]
    

    再次,iOS将获得正确的图像