我的iphone应用有两张图片:“cat.png”和“cat@2x.png”
我听说如果我们想要显示更大的图像(对于iPad版本),那么你将名字命名为“@ 2x.png”&它会自动检测设备和在iPad上显示更大的图像。
这是真的吗? 如果是的话,我也做了同样的事情,但是当我在iPad办理登机手续时它没有显示“cat@2x.png”。
可能出现什么问题?
注意:我知道有帖子讨论这个问题为icon.png但在我的情况下我指的是所有图片。
答案 0 :(得分:3)
@ 2x是iPhone 4视网膜显示屏的扩展。如果要为iPhone发布应用程序,则需要存储两个版本的映像。例如myimage@2x.png和myimage.png。
摘录:
Standard: <ImageName><device_modifier>.<filename_extension>
High resolution: <ImageName>@2x<device_modifier>.<filename_extension>
每个名称的
<ImageName>
和<filename_extension>
部分指定文件的通常名称和扩展名。<device_modifier>
部分是可选的,包含字符串~ipad
或~iphone
。如果要为iPad和iPhone指定不同版本的图像,请包含其中一个修改器。包含高分辨率图像的
@2x
修改器是新的,让系统知道图像是标准图像的高分辨率变体。
答案 1 :(得分:2)
iPad没有足够的RAM支持使用@2x
图形的iPhone伪仿真,因此操作系统不会自动选择它们(正如@Joseph Tura所解释的那样)。
您可以使用一些技术让iPad获得更高分辨率的图形,同时支持iPhone 4 Retina Display分辨率和iPhone-4之前的分辨率,但它要求您自己编写所有图像替换代码。
优秀的Trainyard游戏的创造者Matt Rix解释了他是如何通过一系列的两篇文章在Cocos 2D中做到的: Retinafy Your Game 和 High-res graphics in Cocos2D < / strong>即可。如果您在iPad上玩iPhone(仅限通用) Trainyard 和 Trainyard Express ,图形看起来很棒,并且没有像素加倍的锯齿状外观,因为他的如果在iPad上播放iPhone游戏,代码会交换特定的图形。
即使您没有将Cocos 2D用于游戏开发,也适用相同的基本结构。我建议看看。