PNG

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
PNG
Расширение

.png

MIME

image/png

Разработчик

PNG Development Group

Опубликован

1 октября 1996

Тип формата

Растровая графика

Развит в

APNG, JNG, MNG

Стандарт(ы)

ISO 15948, RFC 2083

Открытый формат?

да

Сайт

libpng.org/pub/png/

PNG (англ. portable network graphics, сокращение произносится по-английски /pɪŋ/[1]) — растровый формат хранения графической информации, использующий сжатие без потерь по алгоритму Deflate.

PNG был создан как свободный формат для замены GIF, поэтому в Интернете появился рекурсивный акроним «PNG is Not GIF»[2] (PNG — не GIF).

История формата[править | править исходный текст]

4 января 1995 года, Т. Боутелл предложил в ряде конференций Usenet создать свободный формат, который был бы не хуже GIF. Через три недели после публикации идеи были разработаны четыре версии нового формата. Вначале он имел название PBF (Portable Bitmap Format), а нынешнее имя получил 23 января 1995 года. Уже в декабре того же года спецификация PNG версии 0.92 была рассмотрена консорциумом W3C, а с выходом 1 октября 1996 года версии 1.0 PNG был рекомендован в качестве полноправного сетевого формата.

Область применения[править | править исходный текст]

PNG transparency demonstration 1.png

Изображение в формате PNG с 8-битным каналом прозрачности поверх шахматного фона, который обычно используется в графических редакторах для индикации прозрачности

Формат PNG спроектирован для замены устаревшего и более простого формата GIF, а также, в некоторой степени, для замены значительно более сложного формата TIFF.[2][3] Формат PNG позиционируется прежде всего для использования в Интернете и редактирования графики.

PNG поддерживает три основных типа растровых изображений[4]:

Формат PNG хранит графическую информацию в сжатом виде. Причём это сжатие производится без потерь, в отличие, например, от JPEG с потерями.

Он имеет следующие основные преимущества перед GIF:

Формат GIF был разработан фирмой CompuServe в 1987 году и изначально был недоступен для свободного использования. Некоторое время назад, до окончания в 2004 году действия патентов на алгоритм сжатия LZW, принадлежавших Unisys и используемых в GIF, его применение в свободном программном обеспечении было затруднено. На данный момент такие затруднения сняты. PNG же с самого начала использует открытый, непатентованный алгоритм сжатия Deflate, бесплатные реализации которого доступны в Интернете. Этот же алгоритм используют многие программы компрессии данных, в том числе PKZIP и gzip (GNU zip).

Формат PNG обладает более высокой степенью сжатия для файлов с большим количеством цветов, чем GIF, но разница составляет около 5-25 %, что недостаточно для абсолютного преобладания формата, так как небольшие 2-16-цветные файлы формат GIF сжимает с не меньшей эффективностью.

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

Различные реализации алгоритма Deflate дают разную степень сжатия, поэтому были созданы программы для пережатия изображений с несколькими вариантами настроек в целях получения наилучшего сжатия — например, форк pngcrush OptiPNG и advpng из комплекта AdvanceCOMP (использует 7-Zip).

Анимация[править | править исходный текст]

Существует одна особенность GIF, которая в PNG не реализована — поддержка множественного изображения, особенно анимации; PNG изначально был предназначен лишь для хранения одного изображения в одном файле.

Для передачи анимированных изображений был разработан расширенный формат MNG, опубликованный в середине 1999 года и уже поддерживаемый в различных приложениях, однако пока так и не ставший общепринятым.

Некоторые — в частности, разработчики Mozilla Foundation — критиковали MNG за сложность и большой размер реализации, и отсутствие обратной совместимости с PNG. В 2004 году они разработали формат APNG, который не был принят в качестве официального стандарта разработчиками PNG и MNG, но его поддержка к 2008 году была реализована в тестовых сборках некоторых браузеров и некоторых программах просмотра изображений.

Совместимость с браузерами[править | править исходный текст]

Не все веб-браузеры одинаково отображают содержимое png-файла. Узким местом являются:

  1. частичная прозрачность (альфа-канал);
  2. поддержка прозрачности в палитре;
  3. гамма-коррекция.
  4. поддержка расширений PNG с анимацией.
  5. цветовая коррекция (ICC).

Проблема поддержки 32-битной (полной) прозрачности картинки формата PNG в Microsoft Internet Explorer была решена в седьмой версии браузера. Для остальных версий IE есть несколько способов, которые помогут веб-мастеру добиться прозрачности путём включения в веб-страницу специальных функций и скриптов.

Название[править | править исходный текст]

  • Неофициально PNG расшифровывают как «PNG is Not GIF» («PNG — это не GIF») по аналогии с известным рекурсивным акронимом «GNU is Not Unix» («GNU — это не UNIX»).
  • PNG произносится по-английски так же, как слово ping[6], то есть [pɪŋ].

См. также[править | править исходный текст]

Примечания[править | править исходный текст]

  1. PNG (Portable Network Graphics) Home Site  (англ.)
  2. 1 2 PNG (Portable Network Graphics) Home Site
  3. PNG (Portable Network Graphics) Home Site
  4. A Basic Introduction to PNG Features (англ.)
  5. В PNG количество цветов всё же имеет предел, но, в отличие от GIF, оно ограничено 248 цветами (3×16 бит).
  6. A Basic Introduction to PNG Features / Pronunciation (англ.)

Ссылки[править | править исходный текст]