如何跳过压缩一个PNG?

Ste*_*her 15 compression iphone xcode png itunesartwork

(注意:我已经解决了这个问题,但是我花了很长时间才发布问题/答案.)

Xcode构建过程在构建时"优化"我的PNG.这通常不是问题,但以这种方式处理的iTunesArtwork会导致它破坏,以至于iTunes无法显示它.我怎么能阻止这个?

Ste*_*her 14

您可以在此处阅读有关Xcode PNG压缩的更多信息:http: //iphonedevelopment.blogspot.com/2008/10/iphone-optimized-pngs.html

虽然您可以在项目设置中使用"压缩PNG文件"完全关闭PNG优化/压缩(仅当项目的Base SDK设置为设备SDK而不是模拟器SDK时才可见),您不希望这样做!阅读上面的链接了解原因的详细信息,但其中的要点是优化让iPhone跳过一些减慢PNG显示速度的数学运算.

Xcode只会优化它所知道的PNG图像文件.为了防止特定的PNG被优化,您可以更改其文件类型,以便Xcode不再知道它是PNG.

  1. 在项目窗口中选择文件.
  2. 选择文件 - >获取信息.
  3. 在"常规"选项卡上,将"文件类型"更改image.pngfile.

(这实际上是添加没有扩展名的文件时的默认设置,这可能是iTunesArtwork没有扩展名的原因.但如果你像我这样迂腐,你检查了文件类型设置并修复了它.)


San*_*rea 8

找到另一个非常简单的方法来禁用单个png文件的压缩.我认为这是一种比接受的答案更好的方法,因为您不必在本地文件系统中更改文件的类型(或扩展名),而只需在XCode中更改.

从更改文件类型Default - PNG Image,以Data在身份在Xcode和类型检查.见下文:

是:

在此输入图像描述

现在:

在此输入图像描述