PNG расшифровывается как Portable Network Graphics. Этот формат был разработан в середине 1990‑х годов разработчиками, которым нужна была замена GIF, потому что метод сжатия, на котором основывался GIF, в то время был защищен патентом. Результатом стал свободный, хорошо документированный формат, который сохраняет каждый пиксель в точности таким, как он был, и который позже был принят в качестве стандарта Консорциумом Всемирной паутины и ISO. Сегодня PNG вы получаете при нажатии клавиши создания скриншота, при экспорте логотипа или сохранении диаграммы из электронной таблицы.
Как PNG хранит изображение
PNG является форматом без потерь сжатия: файл сжимается, но данные не удаляются, и при декодировании вы получаете исходные пиксели в точности. Сжатие проходит в два этапа. Сначала фильтрация переписывает каждую строку пикселей как разность с соседними, превращая плавные области в длинные последовательности очень маленьких чисел. Затем универсальный алгоритм сжатия упаковывает эти числа, используя тот же метод, что и ZIP‑архив.
PNG построен как цепочка помеченных блоков, называемых чанками. Обязательными являются три вида: один описывает размер изображения, тип цвета и глубину цвета, один или несколько содержат сжатые данные пикселей, и еще один помечает конец. Все остальное необязательно, что и делает формат расширяемым. PNG может хранить оттенки серого, индексированный цвет с палитрой или полноцветное изображение с глубиной 8 или 16 бит на канал, а также имеет полноценный альфа‑канал, то есть каждый пиксель может быть полностью непрозрачным, полностью прозрачным или любым состоянием между ними. Поэтому PNG часто используют для логотипов и графики интерфейса с мягкими краями. Базовый формат хранит одно статичное изображение; анимация возможна только с помощью более позднего расширения APNG.
Какие метаданные содержит PNG
Метаданные - это описательная информация, которая хранится в файле вместе с пикселями. В PNG они сохраняются в необязательных чанках; текст может быть обычным, сжатым или помеченным языком, чтобы одно и то же поле могло существовать в нескольких переводах.
- Зарегистрированные текстовые ключевые слова - самые простые, и в отчете они перечисляются по имени:
Title,Author,Description,Copyright,Creation Time,Software,Source,Comment,DisclaimerиWarning.Software- это поле, которое вы видите чаще всего, потому что большинство редакторов вписывают в него свое название. - XMP, стандарт метаданных Adobe на основе XML, передается внутри текстового чанка с языковой меткой. Обычно здесь находятся автор, ключевые слова, оценки и история правок с перечислением программ, которые изменяли изображение.
- EXIF, стандарт метаданных для фотокамер, не входил в исходную спецификацию, но позже был добавлен как отдельный чанк. Поэтому PNG может содержать полный блок данных камеры, включая GPS‑координаты, хотя это обычно происходит только тогда, когда файл был создан путем конвертации из фотографии.
- Чанки цвета и отображения тоже считаются метаданными: встроенный цветовой профиль ICC, значения гаммы и цветности, цвет фона и чанк физического разрешения, в котором записано количество пикселей на метр, откуда и берется значение DPI изображения.
Скриншот или экспортированная графика обычно раскрывают гораздо меньше информации, чем фото с камеры, но не стоит считать PNG анонимным. Конвертация JPG в PNG может перенести исходные данные EXIF и GPS без изменений. Редакторы записывают ваше имя в поле автора или XMP‑создателя, если оно указано в их настройках. А поля Software и история правок незаметно сообщают, какая программа и иногда какая ее версия создала файл.
Когда использовать PNG
Используйте PNG, когда пиксели должны сохраняться точно или когда изображению нужна прозрачность: для скриншотов, схем, диаграмм, логотипов, иконок, плоскостной графики и любых изображений с текстом. Резкие края остаются резкими, а многократное сохранение не ухудшает качество.
По сравнению с JPG выбор прост. Для фотографии PNG обычно в несколько раз больше по размеру без видимого выигрыша в качестве, поэтому фотографии лучше сохранять в JPG или в более современных форматах, таких как WebP или HEIC. По сравнению с GIF PNG однозначно выигрывает для статичных изображений: это полный цвет вместо 256 оттенков и корректная частичная прозрачность вместо одного сквозного цвета. Единственное оставшееся преимущество GIF - анимация.