aspose.info
UK

Файл JFIF - Що таке файл .jfif?

Оновлено

Що таке файл JFIF?

JFIF (формат обміну файлами JPEG (JFIF)) — це файл формату зображення, який використовує розширення .jfif. JFIF створюється на основі JIF (формат обміну JPEG), зменшуючи складність і усуваючи його обмеження.

Коротка історія JFIF

Розробкою документа JFIF керував Ерік Гамільтон, і угода щодо першої версії була укладена наприкінці 1991 року. Версія 1.02 була опублікована 7 вересня 1992 року. RFC 2046 визначає, що формат JFIF використовується для передачі зображень JPEG через Інтернет. JFIF був опублікований ECMA у 2009 році та стандартизований ITU-T у 2011 році як його Рекомендація T.871 та ISO/IEC у 2013 році як ISO/IEC 10918-5

Формат файлу JFIF

Файл JFIF складається з послідовності маркерів, як визначено в частині 1 стандарту JPEG. Кожен маркер складається з двох байтів (FF, за яким іде байт, який визначає тип маркера). Маркери можуть бути як окремими, так і вказувати на початок сегмента маркера.

JFIF дозволяє декільком компонентам, таким як Y, Cb, Cr, мати різну роздільну здатність, але їх вирівнювання не визначено. На відміну від JPEG, JFIF може надавати інформацію про роздільну здатність і співвідношення сторін. JFIF також визначає колірну модель, яка буде використовуватися.

Структура файлу

СегментКодОпис
SOIFF D8Початок зображення
JFIF-APP0FF E0 s1 s2 4A 46 49 46 00 …
JFXX-APP0FF E0 s1 s2 4A 46 58 58 00 …
додаткові маркерні сегменти
SOSFF DAПочаток сканування
стислі дані зображення
EOIFF D9Кінець зображення

Стандарт JFIF визначає такі сегменти:

Сегмент маркера JFIF APP0

Це обов’язковий сегмент, що містить параметри зображення. Він також може містити вбудовану нестиснуту мініатюру.

ПолеРозмір (байти)Опис
Маркер APP02FF E0
Довжина2Довжина сегмента без урахування маркера APP0
Ідентифікатор5JFIF (4A 46 49 46 00) у ASCII із завершенням нульовим байтом
Версія JFIF2Версія JFIF
Одиниці щільності1Одиниця для наступних полів щільності пікселів 00: немає одиниць; Співвідношення ширина:висота пікселя дорівнює Ydensity:Xdensity 01 : пікселів на дюйм 02 : Пікселі на сантиметр
Xdensity2Щільність пікселів по горизонталі більше нуля
Ydensity2Вертикальна щільність пікселів більше нуля
Xthumbnail1Кількість пікселів по горизонталі вбудованої мініатюри RGB. Може дорівнювати нулю
Ythumbnail1Вертикальна кількість пікселів вбудованої мініатюри RGB. Може дорівнювати нулю
Дані мініатюр3 × nНестиснуті 24-бітні дані мініатюр растрового RGB

Сегмент маркера розширення JFIF APP0

Це необов’язковий розділ, який, якщо його визначено, має слідувати безпосередньо за сегментом маркера JFIF APP0. Цей розділ підтримується JFIF версії 1.02 і пізніших і дозволяє вставляти мініатюри в трьох різних форматах.

ПолеРозмір (байти)Опис
Маркер APP02FF E0
Довжина2Довжина сегмента без урахування маркера APP0
Ідентифікатор5JFXX (4A 46 58 58 00) у ASCII із завершенням нульовим байтом
Формат мініатюри1Визначає, який формат даних використовується для наступної вбудованої мініатюри: 10 : формат JPEG 11 : 1 байт на піксель, палетований формат 13 : 3 байти на піксель у форматі RGB
Дані мініатюризмінна

Перетворення JFIF в інші формати файлів зображень

JFIF можна конвертувати в такі популярні формати файлів зображень, як PNG, JPG і PDF.

Посилання

– JFIF – Вікіпедія

Див. також