iPad:PNG Crush错误

时间:2011-03-22 06:37:03

标签: ipad ipad-2

我正在尝试将我的iPad项目移植到最新的iPad 2.我安装了带有Xcode 4.0的iOS 4.3 SDK。当我尝试构建我的项目时,我收到以下错误。我不知道为什么我会收到这个错误。有人可以帮我解决这个构建错误吗?

  

在阅读/Users/username/Desktop/iPAD/MyProject/trunk/Resourses/images/top_bar.png pngcrush时发现了libpng错误:      不是PNG文件..

无法找到文件:/Users/username/Library/Developer/Xcode/DerivedData/Project-fmhveawksgdtnraclfizuhrekmzi/Build/Products/Debug-iphoneos/MyApp-Upgraded.app/top_bar.png

15 个答案:

答案 0 :(得分:89)

我有同样的问题,但这不是因为png损坏:这是因为两个PNG文件在我的源代码树的不同目录中具有相同的文件名。奇怪的是,错误(我有4个文件有“双胞胎”)从一个构建到另一个不同。在一次运行中,我在所有文件上都有错误,另一次只在其中一些文件上有错误。

答案 1 :(得分:60)

您是否检查文件Users/kavapanga/Desktop/iPAD/ALN II 3 latest 2/trunk/Resourses/images/CS_logo_for_top_bar.png是否存在?还要检查它是否是PNG文件。右键单击该文件并执行“获取信息”以检查该文件是否具有任何其他扩展名并标记为隐藏扩展名。如果您不确定文件的格式,打开文件并将其再次保存为PNG文件应该可以在大多数时间使用。

答案 2 :(得分:51)

我遇到了同样的问题。 如何修复:使用预览打开图像 - >文件>出口>将格式更改为PNG,您就完成了!

答案 3 :(得分:10)

图像或Xcode没有问题。从photoshop创建该图像的问题是该图像是隔行扫描还是不隔行扫描。在photoshop中保存图像时,您将获得一个选项。

点击此链接了解更多信息:

Build app with Xcode 4 - it always show some error about PNG image

不隔行扫描: 您应该使用非隔行扫描的图像。这是原始的png图像。

隔行扫描: 此选项适用于从网上下载的图片。具体来说,当您需要减少图像加载时间时使用。这个选项内部做的是,它将创建一个.png文件,但是具有较低的清晰度和较低的dpi,就像普通的jpeg图像一样。这就是为什么这些图像具有jpeg图像的属性。

希望这对你们有所帮助。

享受编码:)

答案 4 :(得分:10)

当我将项目文件夹中的图像移动到“Images”文件夹时,出现此错误。

原来我的“复制资源”构建阶段包含从新的正确文件夹中复制文件的步骤 - 以及存储它们的上一个文件夹。删除过时的构建步骤可以修复错误。

答案 5 :(得分:6)

pngcrush认为PNG文件实际上不是PNG文件的另一个原因是,如果您不小心导出了图层完整的图层。如果您在Finder中检查文件,请查看名为“图层”的项目的“更多信息”区域(尺寸,颜色空间等)

可能会说:

Layer 68, Title Banner, Group 26

当设计师有时会另存为PNG而非导出为web / mobile时,会发生这种情况。它完全摧毁了libpng(因此也就是pngcrush)。

修复方法是正确导出PNG,或者自己打开PNG并将其重新导出为“平面”PNG。

答案 6 :(得分:5)

这可能是由不兼容的PNG文件格式引起的。您将需要"颜色配置文件"为你的png文件使其在Xcode中工作。

首先,检查文件的信息。

enter image description here

虽然这是一个有效的PNG文件,但这是 NOT Xcode可以采用的格式。您将需要以下PNG格式:

enter image description here

将PNG文件转换为Xcode可以采用的格式。您可以使用“预览”导出文件。

答案 7 :(得分:3)

也有这个问题。 PNG存在并且没有腐败。

通过以下方式解决:

  1. 在xcode中单击图像,选择“删除”
  2. 仅删除参考(实际上不会删除文件)
  3. 将其拖放回xcode(就地),确保选择正确的目标

答案 8 :(得分:2)

我遇到了这个问题,发现png有问题。我重新制作并且工作正常。

答案 9 :(得分:2)

我遇到了同样的问题。即使文件扩展名可能是png,文件仍可能是其他内容。并且'获取信息'显示了我认为的文件扩展名。在预览中打开文件并转到工具 - > show inspector - >文件标签。在这里,您应该能够看到实际的文件类型。

答案 10 :(得分:2)

我有这个错误,它实际上与它错误的png完全无关。实际的问题是我的项目中有两个同名的文件(我已经拖了一个新版本的第三方类,假设它会替换旧版本)。

我删除了对重复文件的引用,解决了构建错误。

答案 11 :(得分:1)

当我尝试复制项目文件夹并运行项目时出现同样的错误。原始文件夹中的项目没有这个问题。

删除副本并制作文件夹的新副本解决了我的问题。

答案 12 :(得分:0)

解决了问题

我在开发过程中遇到了同样的问题,但今天我发现有两种解决方案和它们的可能性,这就是这个

  

解决问题#1:如果您创建或您的设计师创建了他们从adobe illustrator中保存了pnd的设计,那么如果您自己创建只是将所有AI艺术品复制到photoshop或者如果您的设计师创建它就会出现问题然后告诉他们将插画家格式导入到photoshop并发送pnd。

     

解决问题#2:选择图像右键单击图像 - >获取信息并检查它是否是正确的.png格式,如果不是那么只需编辑.png扩展名。

享受吧。

答案 13 :(得分:0)

错误:

  

读取/ Volumes / Mac OS / RDC / Workpot / RestApp / RestApp / default1024_768.png pngcrush捕获   libpng错误:不是PNG文件..

<强>解决方案:

  1. 我在PaintBrush工具中打开了“default1024_768”文件并另存为同名的PNG文件。
  2. 替换了Xcode项目中的Icon文件 - &gt;清洁 - &gt;建立。
  3. 这就像魅力

    一样

    希望这会对某人有所帮助。

答案 14 :(得分:-3)

我经常遇到这个错误。如果你100%确定你的png在那里并且是正确的,那么只需重新编译项目,如果不起作用 - 一次又一次重新编译,有时它会开始工作;-)这是Xcode中的一个错误很长一段时间(自Xcode3起)。