Вопрос

(Примечание:Я решил эту проблему, но это заняло достаточно много времени, поэтому я публикую здесь вопрос/ответ.)

Процесс сборки Xcode «оптимизирует» мои PNG при создании.Обычно это не проблема, но обработка iTunesArtwork таким образом приводит к его повреждению, и iTunes не может его отобразить.Как я могу предотвратить это?

Это было полезно?

Решение

Подробнее о сжатии PNG в Xcode можно прочитать здесь:http://iphonedevelopment.blogspot.com/2008/10/iphone-optimized-pngs.html

Хотя вы можете полностью отключить оптимизацию/сжатие PNG с помощью параметра «Сжать файлы PNG» в настройках вашего проекта (это видно только в том случае, если базовый SDK проекта установлен на SDK устройства, а не на SDK симулятора), вы не хотите этого делать. !Прочтите ссылку выше, чтобы узнать, почему, но суть в том, что оптимизация позволяет iPhone пропускать некоторые математические вычисления, которые замедляют отображение PNG.

Xcode будет оптимизировать только те файлы изображений PNG, о которых ему известно.Чтобы предотвратить оптимизацию определенного PNG, вы меняете тип его файла, чтобы Xcode больше не знал, что это PNG.

  1. Выберите файл в окне проекта.
  2. Выберите «Файл» -> «Получить информацию».
  3. На вкладке Общие измените Тип файла с image.png к file.

(На самом деле это значение по умолчанию, когда вы добавляете файл без расширения, вероятно, поэтому в iTunesArtwork его нет.Но если вы такой же педантичный, как я, вы проверили настройку «Тип файла» и исправили ее.)

Другие советы

Нашел еще один очень простой способ отключить сжатие одного png-файла.Я думаю, что это лучший подход, чем принятый ответ, потому что вам не нужно менять тип (или расширение) файла в локальной файловой системе, а только в XCode.

Измените тип файла с Default - PNG Image к Data в инспекторе идентификаторов и типов в XCode.См. ниже:

Был:

enter image description here

Сейчас:

enter image description here

Для всех вас, ребята, использующих Xcode 6.4 и выше:

Идти к:«Цели» — «Название вашего проекта».

Далее перейдите на вкладку «Настройки сборки».Чуть ниже названия вкладки нажмите кнопку «Основные» и «Объединенные».

Затем прокрутите вниз до разделителя «Упаковка», и вы увидите, что для параметра «Сжимать файлы PNG» по умолчанию установлено значение «Да».

enter image description here

1.Goto your build setting 
2.Search flag Compress PNG files and set it to NO.(default is YES).

После этого сжатия изображений PNG можно будет избежать.Просто для получения дополнительной информации

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top