2012-04-04 104 views
4

當我在iOS 5.1上啓動我的應用程序(僅在目前爲止的視網膜顯示器上進行測試)時,[email protected]圖像在下面顯示一條綠線圖像的底部。我已經確認圖像是640x960,並且不包含這條綠線。Xcode 4.3.2默認啓動圖像損壞的底像素

我猜這一定是由於PNG優化工具問題導致Xcode在將資源添加到捆綁包之前運行,特別是因爲我在使用模擬器運行時沒有看到這一點。

有沒有辦法修復或更新此PNG優化工具? (我從Mac App Store運行Lion的最新Xcode 4.3.2)。

+2

我確認這個問題是由於PNG壓縮。您可以在目標版本設置中關閉「壓縮PNG文件」,並且此問題消失。這個問題描述瞭如何確定xcode用於pngcrush的位置:http://stackoverflow.com/questions/9338019/where-is-pngcrush-for-xcode-4-3。現在我正在尋找一種方法來安裝pngcrush的工作版本,這樣我仍然可以在沒有這種損壞的情況下獲得優化的文件。 – Prometheus 2012-04-04 21:42:24

回答

4

pngcrush 1.6.4中有一個安裝在Xcode 4.3.2應用程序包中的錯誤。我可以按照以下說明(感謝http://www.mactricksandtips.com/2012/02/installing-and-using-pngcrush-on-your-mac.html)來解決這個問題:

  1. 下載pngcrush最新發布的版本在這裏:http://sourceforge.net/projects/pmt/files/pngcrush/
  2. 解壓使用您喜歡的壓縮實用程序文件(或者,在終端(或者你最喜歡的命令行工具),導航到保存此下載的目錄,並運行此命令(您可能需要根據您的下載更改版本號)

    tar -xvzf pngcrush-1.7.15.tar.xz

  3. 導航到命令行工具中的解壓縮目錄。
  4. 運行命令「使」
  5. 運行命令「須藤CP pngcrush /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush」上覆制這個最新版本舊版本的頂部。
+0

您還可以在[ImageOptim](http://imageoptim.com/)應用程序包內獲得pngcrush二進制文件(1.7.22,'liblibpng.dylib'和 'pngcrush')。 – 2012-04-19 13:09:19

+0

哇,這對我有用!謝謝,Apple ....: - \ – Ron 2012-12-13 06:40:59

+0

確認此問題仍然存在於Xcode版本6.1.1(6A2008a)中。一定要像Damin Debin建議的那樣從ImageOptim中複製liblibpng.dylib和pngcrush,並且通過按下command-option-shift-k並從應用程序中刪除應用程序然後重新運行它來清理構建文件夾。否則,Xcode可能會使用已損壞映像的緩存副本。 – 2015-01-14 23:08:42

0

對於那些像我一樣,擊中了XCode 4.5.2這個問題,這個bug似乎表現出來時,project.pbxproj具有如本支持論壇主題描述了PNG圖像文件記錄衝突: https://devforums.apple.com/message/731402

與該線程中的答案不同(即,手動編輯.pbxproj文件,不是我最喜歡的事情......),我發現刪除對違規圖像的引用並將它們再次添加到項目文件中糾正了問題。