Различия в размере и прозрачности при сохранении PNG разными способами

Я экспортирую слои PSD в PNG для атласов текстур игры.

Когда я это делаю Copy -> New File (RGB 8-bit) -> Save As PNG, полученный PNG довольно тяжелый, а Finder показывает белый фон вместо прозрачного.

Но когда я использую Export Layers to Files (24-bit PNG), результирующий PNG на 70-95% меньше.

картинки

Мне не нужно никакое сжатие с помощью Photoshop - моя программа для создания текстур может сделать это сама по себе. Но я бы хотел экспортировать слои по сценарию, а не сохранять их вручную.

  1. Что делает Saved AsPNG таким тяжелым? Потеряют ли экспортированные изображения какую-либо информацию о цвете или ухудшится качество?
  2. Почему прозрачность отличается?
Вы имеете в виду размер файла на диске на 70% меньше или вы имеете в виду, что изображение имеет меньшие размеры в пикселях? Образец изображения, который вы показываете, изображение с пометкой «сохраненный.png» выглядит физически меньше, но это может быть эффект масштабирования ОС.
Если вам хочется углубиться в теоретическую часть, прочитайте эту статью , которая, кстати, размещена на веб-сайте, предлагающем автономный инструмент сжатия, который делает то же самое, что «сохранить для Интернета» в Photoshop (есть довольно некоторые подобные программы, просто поищите в Интернете сжатие png)
@horatio Размер файла, размеры равны: 72*80.
@kontur спасибо за ссылку, я попробовал pngcrush, чтобы получить информацию о вспомогательных фрагментах в PNG.
Fireworks и Illustrator — гораздо лучшие инструменты для создания прозрачных png. Illustrator создает самые маленькие файлы, затем Fireworks.

Ответы (2)

Копирование файла PNG размером 54 КБ на виртуальную машину Windows XP уменьшило размер файла до 5 КБ. Версия OS X Photoshop добавляет к файлу атрибут «com.apple.resourcefork» во время обычного сохранения. Вы можете увидеть это по ls -l@ filename.png. Атрибут не включен в файл, но файловая система показывает общий размер. Белый фон на снимке экрана появляется из-за этого атрибута. PNG с нормальным размером файла отображаются с прозрачным фоном.

Без атрибута размер PNG составляет около 5 КБ. Он был уменьшен до 1,6 КБ за счет удаления фрагментов iTXt (870b), pHYs (9b), iCCP (2,64 КБ) и cHRM (32b) с помощью pngcrush.

При «Сохранении для Интернета и устройств» Photoshop по-прежнему добавляет в файл вспомогательные фрагменты tEXt/zTXt: 0 Software: Adobe ImageReadyи около 2000 символов XML, таких как:1 XML:com.adobe.xmp (: ): <?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/"...

UPD: я пропустил пункт «Метаданные» в диалоговом окне «Сохранить для Web и устройств». «Нет» добавляет только 0 Software: Adobe ImageReadyк файлу. Размер файла уменьшен с 3,6 КБ до 2,5 КБ.

Итак, конечные размеры файлов:

  • Photoshop «Сохранить как»: 5,4 КБ (и OS X использует на 90% больше места для его хранения)
  • Photoshop «Сохранить для Интернета», метаданные = нет: 2,5 КБ
  • pngcrush ( -rem alla -rem text): 1,6 КБ

Когда вы «сохраняете как», вы также включаете метаданные, а также скрытые данные приложения.

Используя функцию «Экспорт в PNG», вы удаляете из файла метаданные и любые данные, относящиеся к конкретному приложению, и, следовательно, получаете меньший размер файла.

Между ними не должно быть потери качества. Основное отличие заключается в метаданных.

Я не показываю никакой разницы в прозрачности здесь. Любой метод приводит к 32-битному PNG для меня, при условии, что исходный файл имеет прозрачность. На изображении выше показаны превью значков Finder/Explorer . Предварительные просмотры могут не иметь прозрачности, но есть вероятность, что фактическое изображение имеет прозрачность. Значки предварительного просмотра создаются из комбинации слоев и не всегда корректно передают прозрачность. Но в большинстве случаев это только предварительный просмотр файла, созданный операционной системой.

Фактические изображения прозрачны. Я сейчас использую тяжелые с белым фоном в Finder в своей игре.