Создайте приложение с помощью Xcode 4 - оно всегда показывает ошибку об изображении PNG

Когда я создаю свое приложение с Xcode 4, оно всегда показывает это сообщение об ошибке:

CopyPNGFile /Users/michaelchen/Library/Developer/Xcode/DerivedData/iMusicBox-boeawugacmhacbdtyymnprzfobyq/ArchiveIntermediates/iMusicBox/InstallationBuildProductsLocation/Applications/iMusicBox.app/list_cell.png Images/list_cell.png
    cd /Volumes/WORK/Works/iMusicBox
    setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    "/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/PrivatePlugIns/iPhoneOS Build System Support.xcplugin/Contents/Resources/copypng" -compress "" /Volumes/WORK/Works/iMusicBox/Images/list_cell.png /Users/michaelchen/Library/Developer/Xcode/DerivedData/iMusicBox-boeawugacmhacbdtyymnprzfobyq/ArchiveIntermediates/iMusicBox/InstallationBuildProductsLocation/Applications/iMusicBox.app/list_cell.png

При проверке альфа в /Volumes/WORK/Works/iMusicBox/Images/list_cell.png pngcrush обнаружена ошибка libpng: недостаточно данных изображения

но это нормально с Xcode 3.2 - почему?

22 ответа

Нашел это!!

Вы должны сохранить ваши файлы PNG как НЕ ВСТРОЕННЫЕ. Попробуйте открыть файл в фотошопе (или аналогичном), сохранить как и выбрать "Не чересстрочный".

Это работает в моем случае

надеюсь это поможет

Это происходит, когда у вас есть несколько записей для файла изображения в файле проекта. Я понятия не имею, почему, но я просто удалил все записи, перезагрузил проект и снова добавил файл.

Убедитесь, что у вас нет повторяющихся записей в "Фазе сборки" цели -> "Копировать ресурсы комплекта"

Это может быть параметр "Сжать файлы PNG" (из раздела "Упаковка" в настройках сборки).

Я решил эту ошибку, переключив ее на "Нет".

В моем случае я обнаружил, что мой испорченный png не открывается в фотошопе. Я открыл в предварительном просмотре, сохранен как psd, а затем снова сохранен из фотошопа (save-as -> png -> not-interlaced). Прекрасно компилируется сейчас в xcode 4.

Попробуйте найти и восстановить эти *.PNG файлы, используя "Предварительный просмотр", а точнее: Файл - Экспорт... - "Сохранить как PNG". Мне кажется, что это происходит при сохранении изображения в Photoshop с режимом "Сохранить для Web" и после того, как это изображение будет сохранено с помощью специального сжатия (LZW). Вот и все, удачи!

Похоже, ваш файл PNG list_cell.png поврежден. Xcode 4 делает больше проверок, чем Xcode 3 во многих областях и выявляет проблемы, которые скрывались в вашем проекте все время.

Вы пытались открыть файл PNG в графическом редакторе и сохранить его снова?

В моем случае я решил проблему, удалив пустой "пробел-ключ" в папке / имени файла.

Надеюсь, что это работает для кого-то тоже.

Мне пришлось удалить ссылки на PNG и снова добавить их в проект. У кого-нибудь есть лучшее решение?

В моем случае с xcode 4.5 проблема решается путем предоставления разрешения с терминала

chmod -R +rw /yourprojectpath/yourprojectfolder

возможно, это не лучшее решение из-за блокировки файлов с общим доступом к файлам. Но подойдет, если вы спешите.

Мои не были переплетены, но я продолжал получать странные ошибки от pngcrush. В конце концов я удалил файлы не только с диска, но и через XCode. Я добавил их обратно один за другим, перетаскивая их в XCode, создавая после каждого, ожидая попадания в тот, у которого была проблема. Я никогда не делал. Мой вывод заключается в том, что вам действительно нужно манипулировать файлами из XCode, а не файловой системой вообще.

Мне пришлось удалить файлы PNG, а затем перейти к Targets -> AppName -> Build Phases -> Bundle Resources и удалить файлы оттуда тоже.

Следуйте шагам:

 1. Take an image. 

 2. Rename it to the showing error png's name. 

 3. Drag it back to the Xcode.

Эта ошибка возникает из-за того, что у вас есть изображение в ресурсах шириной или высотой менее 5 пикселей, и вы пытаетесь изменить его размер. Установите для всех изображений минимум 5 пикселей, и ошибка исчезнет.

Я получил ту же ошибку. Оказалось, мои PNG, где на самом деле JPEG. XCode показал их правильно, а устройство iOS - нет. Решил, сохранив JPG как PNG.

Я решил эту ошибку, она появляется при переименовании изображений после помещения в проект, поэтому для решения этой проблемы сначала следует удалить текущие изображения, переименовать файлы из Finder, а затем скопировать эти изображения в проект.

Ева Мадразо опубликовала правильный ответ (по крайней мере, для проблем с чересстрочными PNG), но для тех, у кого возникла эта проблема с кучей изображений, как я, вы можете использовать mogrify рекурсивно, чтобы деинтерлейсировать каждый файл сразу.

find ./ -name "*.png" -exec mogrify -interlace none {} \;

Изменение метода чересстрочной развертки не влияет на качество изображения, но влияет на размер изображения, и ни один из них не даст вам изображение меньшего размера.

Mogrify поставляется с ImageMagick, и вы можете установить его вместе с homebrew.

Может быть, поможет вам. Проверьте Alpha Channel свойство, как показано на прикрепленном скриншоте. Так должно быть YES если это NO,

Может быть, поможет вам. Проверьте Alpha Channel свойство, как показано на прикрепленном скриншоте. Так должно быть YES если это NO,

введите описание изображения здесь

Ошибка:

При чтении /Volume /Mac OS/RDC/Workpot/RestApp/RestApp/default1024_768.png pngcrush перехватил ошибку libpng: не файл PNG..

Решение:

  1. Я открыл файл "default1024_768" в инструменте PaintBrush и сохранил PNG-файл с тем же именем.
  2. Заменил файл Icon в проекте Xcode.
  3. Очистить -> Построить

Вот и все, его работа, как шарм

Надеюсь, это кому-нибудь поможет.

В моем случае мне пришлось удалить все файлы PNG из папки, а затем снова добавить файлы без перетаскивания изображений в пользовательский интерфейс Xcode (в разделе "Запустить изображения"). Последнее было ключевым в моем случае, сначала добавление файлов в папку, а затем перетаскивание их в пользовательский интерфейс как-то вызывало дубликат, который все испортил. Попробуйте, если больше ничего не работает для вас.

У меня такая же проблема. Я решил удалить дубликаты картинок. Проверьте в разных папках. Это была моя проблема.

Другие вопросы по тегам