MNG

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Multiple-image Network Graphics
Расширение .mng[1]
MIME-тип video/x-mng[2],image/x-mngиimage/x-jng[3]
Опубликован 2001
Тип формата растровая графика
Содержит PNG,JNG
Расширен из PNG[4]
Сайт libpng.org/pub/mng/
png-mng.sourceforge.net/…

MNG(англ.Multiple-image Network Graphics) — формат графических файлов. Поддерживает все возможности алгоритмов сжатияPNGиJPEG(в том числе полупрозрачность и гамма-коррекцию) для создания анимированных изображений. Поддерживается в браузереKonqueror,поддерживался в браузереMozillaс 2000 до 2003 года.

MNG близко связан с PNG. Когда в1995началась разработка формата PNG, разработчики решили не включать поддержку анимации, так как в то время эта особенность использовалась редко. Тем не менее, началась работа над MNG — версией PNG с поддержкой анимации. Первая версия спецификации MNG вышла31 января2001.

В настоящий момент MNG не поддерживается популярными ПО и браузерами. Также существует форматAPNG,который намного проще MNG.

Преимущества формата

[править|править код]

Основные преимущества формата, по сравнению сGIF(поддерживает анимацию), JPEG (обеспечивает наименьший размер файла за счет потерь при сжатии) и PNG (сжатие без искажений).

  • Анимация
    • полноцветная анимация (по сравнению с палитерной 256-цветной GIF-анимацией)
    • объектно- (спрайтно-) ориентированный подход к анимации с командами управления изображением вместо простой последовательности кадров, как в GIF
    • вложенные циклы для сложной анимации
  • Сжатие
    • более эффективное чем в GIF
    • сжатие с потерями (как в JPEG) и без (как в PNG), по выбору
    • поддержка разностных кадров для увеличения сжатия
  • Дополнительные возможности
    • поддержка прозрачных JPEG кадров
    • поддержкаальфа-каналадля всех объектов
    • поддержкакоррекции гаммыи цвета
    • может включать произвольную текстовую и прочую информацию (допускает сжатие)
    • несколькоконтрольных суммдля проверки целостности разных частей файла
    • специальная строка идентификации, которая позволяет определить частые типы повреждения (в основном связанные с перекодировкой)
    • определяет нескольких уровней (профилей) поддержки для упрощения реализации
  • Прочее

Технические детали

[править|править код]

В целом структура файлов формата MNG такая же, как и уPNG,отличаясь только в метке идентификации (8A 4D 4E 47 0D 0A 1A 0A в шестнадцатеричном формате) и использовании гораздо большего числа разновидностей блоков (chunk). Кадры MNG сохраняются как PNG илиJNG.

Формат MNG представляет собой упрощённый растровый аналогAdobe Flash:каждый кадр состоит из большого количества слоёв, которые можно двигать друг относительно друга, масштабировать и обрезать. Из-за этого поддержка формата MNG довольно сложна.

Также определены две упрощённые версии спецификации: MNG-LC (низкая сложность) и MNG-VLC (очень низкая сложность). Они позволяют реализовать частичную поддержку формата MNG, чтобы уменьшить сложность реализации программы. Это важно для устройств с очень ограниченными ресурсами:мобильные телефоныи т. п.

У MNG ещё нет зарегистрированного типаMIME,но можно использоватьvideo/x-mngилиimage/x-mng.

Каждый из кадров может быть закодирован в MNG как с потерей информации (JPEG-компрессия), так и без потерь (компрессияLZ77,применяемая вPNG).

Соперники формата

[править|править код]

На данное время главный соперник —GIF,в силу его полной поддержки. Другой альтернативой являетсяAPNG.Также может использоваться анимацияSVGс внедрёнными PNG- илиJPEG-кадрами.

Библиотеку libmng можно портировать при помощиEmscripten.При этом возможен рендеринг черезHTML5(canvas). Также возможна поддержка и динамических MNG.