【问题标题】:Facing PNGCrush issue on some of XCode / Mac OS (Not specific)在某些 XCode / Mac OS 上面临 PNGCrush 问题(不具体)
【发布时间】:2013-04-16 20:12:08
【问题描述】:

我使用 Mac OS 10.7.5 和 XCode 4.6.2 开发了一个应用程序。应用程序在我的机器上运行良好,没有任何错误/警告。

但是当我尝试在另一台机器 Mac OS 10.8 和 XCode 4.6.2 上运行时,它显示该机器中某些图像的 pngcrush 错误。尽管存在很少的 pngcrush 错误,但应用程序仍然可以在模拟器或设备上正常运行。

我的问题是:为什么两端的调试存在差异以及如何解决它。 (如何避免此类错误)

错误信息

While reading ImagePath/ImageName.png pngcrush caught libpng error: Not a PNG file.

【问题讨论】:

  • 请发布您收到的错误。
  • 添加了错误信息。它会抛出这样的错误消息,但应用程序仍然可以在模拟器/设备上完美运行。

标签: ios xcode macos png pngcrush


【解决方案1】:

Pngcrush 是 Xcode 用于压缩应用程序中包含的 PNG 图像的 PNG(便携式网络图形)文件的优化器,目的是减少构建数据包的最终大小。

这将在下面的路径下

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin

肯定有两种可能,

  1. 您的图像已损坏。从 Photoshop 将其重新保存为 .png 或使用新的。
  2. 检查您是否在 Xcode 中添加了两个/多个引用。如果是,则删除旧的引用。

【讨论】:

    【解决方案2】:

    “不是 PNG 文件”的图像可能已经通过 Apple 的专用 Xcode SDK 版本 pngcrush 运行,该版本会生成不再是有效 PNG 文件的“优化”文件。

    查看引发错误的文件的开头,并查看从字节 12 开始的字节是否是“CgBI”而不是“IHDR”。如果是这样,您需要撤消更改。搜索“pngcrush”和“CgBI”以了解具体方法。

    【讨论】:

      猜你喜欢
      • 2020-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-20
      • 2021-05-01
      • 1970-01-01
      • 2011-12-17
      • 1970-01-01
      相关资源
      最近更新 更多