TIFF

TIFF ( англ. Tagged Image File Format ) - Формат зберігання растрових графічних зображень. TIFF став популярним форматом для зберігання зображень з великою глибиною кольору. Він використовується при скануванні, відправці факсів, розпізнаванні тексту, в поліграфії, широко підтримується графічними додатками. TIFF був обраний в якості основного графічного формату операційної системи NeXTSTEP і з неї підтримка цього формату перейшла в Mac OS X.

Формат був розроблений Aldus Corporation у співробітництві з Microsoft для використання з PostScript. Компанія-власник специфікацій - Aldus Corporation - згодом об'єдналася з Adobe Systems, що володіє в даний час авторським правом на ці специфікації. [1]

Спочатку формат підтримував стиснення без втрат, згодом формат був доповнений для підтримки стиснення з втратами у форматі JPEG. [1]

Файли формату TIFF, як правило, мають розширення. Tiff або. Tif.


1. Сигнатура і заголовок файлу

Заголовок файлу містить сигнатуру і посилання (зміщення) на перший змістовний блок даних у файлі.

Сигнатура файлу ( магічне число) TIFF складається з двох частин:

  • Байти 0-1 - для визначення порядку байтів у файлі (представлені в коді шістнадцятковій системи числення і в текстовому вигляді на основі кодування ASCII):
    • 49 49 ("" II "") - при прямому (little-endian) порядку байтів, від назви марки процесорів Intel, що використовують такий порядок (див., наприклад, Intel x86)
    • 4D 4D ("MM") - при зворотному (big-endian) порядку байтів, від назви марки процесорів Motorola, що використали саме такий порядок (див., наприклад, Motorola 680x0)
  • Байти 2-3 - ідентифікатор формату TIFF (42 - для стандартного TIFF, 43 - для BigTIFF з 64-розрядної адресацією); порядок залежить від байтів 0-1):
    • 2A 00 - при прямому порядку байтів
    • 00 2A - при зворотному порядку байтів

Таким чином, існують два можливі варіанти сигнатури (в залежності від порядку байтів у файлі):

  • 49 49 2A 00 - при прямому порядку байтів
  • 4D 4D 00 2A - при зворотному порядку байтів

Далі, байти 4-7, зазначено зсув у байтах від початку файлу (вирівняне по межі WORD ( машинне слово)) на першу директорію IFD ( англ. image file directory ).


2. Підтримувані формати зберігання даних

Структура формату гнучка і дозволяє зберігати зображення в режимі квітів з палітрою, а також в різних колірних просторах:

  • Бінарному (двокольоровий, іноді неправильно званому чорно-білим)
  • Напівтоновому
  • З індексованої палітрою
  • RGB
  • CMYK
  • YCbCr
  • CIE Lab

Підтримуються режими 8, 16, 32 і 64 біт на канал при целочисленном, а також 32 і 64 біт на канал при поданні значення піксела числами з плаваючою комою.


3. Стиснення

Є можливість зберігати зображення у файлі формату TIFF із стискуванням і без стиснення. Ступеня стиснення залежать від особливостей самого зберігається зображення, а також від використовуваного алгоритму. Формат TIFF дозволяє використовувати наступні алгоритми стиснення:

При цьому JPEG є просто інкапсуляцією формату JPEG в TIFF. Формат TIFF дозволяє зберігати зображення, стислі за стандартом JPEG, без втрат даних ( JPEG-LS).

Алгоритми CCITT Group 3 і 4 призначені для кодування бінарних растрових зображень. Спочатку вони були розроблені для мереж факсимільного зв'язку (тому іноді їх називають Fax 3, Fax 4). На даний момент вони також використовуються в поліграфії, системах цифрової картографії та географічних інформаційних системах. Алгоритм Group 3 нагадує RLE, так як кодує лінійні послідовності пікселів, а Group 4 - двовимірні поля пікселів.


4. Теги

TIFF є тегів форматом і в ньому є наступні види тегів:

4.1. Основні теги

Ці теги складають ядро ​​формату і в обов'язковому порядку повинні підтримуватися всіма продуктами, що реалізовують формат TIFF відповідно до специфікації.

Код Hex Ім'я Опис
254 0x00FE NewSubfileType Тип даних, що зберігаються в цьому файлі. Цей тег є заміною тегу SubfileType, і є дуже корисним, коли в одному TIFF файлі зберігається декілька зображень.
255 0x00FF SubfileType Тип даних, що зберігаються в цьому файлі (старий).
256 0x0100 ImageWidth Кількість колонок у зображенні.
257 0x0101 ImageLength Кількість рядків в зображенні.
258 0x0102 BitsPerSample Кількість біт у компоненті. Цей тег припускає різне число бітів в кожному компоненті (хоча в більшості випадків воно однакове). Наприклад, для RGB може бути 8 для всіх компонентів - червоного, зеленого і блакитного, або 8,8,8 для кожного з компонентів.
259 0x0103 Compression Використовуваний вид компресії.
262 0x0106 PhotometricInterpretation Використовувана колірна модель.
263 0x0107 Threshholding Вид перетворення сірого в чорне і біле для чорно-білих зображень.
264 0x0108 CellWidth Кількість колонок у матриці перетворення з сірого в чорне і біле.
265 0x0109 CellHeight Кількість рядків в матриці перетворення з сірого в чорне і біле.
266 0x010A FillOrder Логічний порядок бітів у байті.
270 0x010E ImageDescription Опис зображення.
271 0x010F Make Виробник зображення.
272 0x0110 Model Модель або серійний номер.
273 0x0111 StripOffsets Зсув для кожної смуги зображення в байтах.
274 0x0112 Orientation Орієнтація зображення.
277 0x0115 SamplesPerPixel Кількість компонентів на піксель.
278 0x0116 RowsPerStrip Кількість рядків на смугу.
279 0x0117 StripByteCounts Кількість байт на смугу після компресії.
280 0x0118 MinSampleValue Мінімальне значення, використовуване компонентом.
281 0x0119 MaxSampleValue Максимальне значення, використовуване компонентом.
282 0x011A XResolution Кількість пікселів в ResolutionUnit рядки.
283 0x011B YResolution Кількість пікселів в ResolutionUnit стовпця.
284 0x011C PlanarConfiguration Метод зберігання компонентів кожного пікселя.
288 0x0120 FreeOffsets Зсув у байтах до рядка невикористовуваних байтів.
289 0x0121 FreeByteCounts Кількість байтів в рядку невикористовуваних байтів.
290 0x0122 GrayResponseUnit Дозвіл даних, що зберігаються в GrayResponseCurve.
291 0x0123 GrayResponseCurve Величина щільності сірого.
296 0x0128 ResolutionUnit Дозвіл даних, що зберігаються в XResolution, YResolution.
305 0x0141 Software Ім'я та версія програмного продукту.
306 0x0142 DateTime Дата і час створення зображення.
316 0x013B Artist Ім'я творця зображення.
315 0x013С HostComputer Комп'ютер і операційна система, використані при створенні зображення.
320 0x0140 ColorMap Колірна таблиця для зображень, що використовують палітру кольорів.
338 0x0152 ExtraSamples Опис додаткових компонентів.
33432 0x8298 Copyright Ім'я власника прав на збережене зображення.

4.2. Розширені теги

Ці теги складають ядро ​​формату, але, на відміну від основних тегів, їх підтримка не обов'язкова.

4.3. Спеціальні теги

Спеціальні теги споконвічно були визначені фірмою Adobe. Вони призначені для зберігання в TIFF спеціальних типів даних виробників програмного забезпечення і повинні бути зареєстровані фірмою Adobe.

Примітки

  1. 1 2 TIFF Revision 6.0 - partners.adobe.com/public/developer/en/tiff/TIFF6.pdf. Adobe Systems (3 червня 1992). Читальний - www.webcitation.org/68fwWWiVz з першоджерела 25 червня 2012.


Перегляд цього шаблону Медіаконтейнера
Відео / аудіо
Аудіо
Графічні формати ( стиск)
Растрові

Без втрат: BMP FPX GIF ICO ILBM JBIG PCX PNG PNM PSD RAW TGA WBMP XCF Включаючи стиснення з втратами: EXR ICER JBIG2 JPEG / JP2 / JPEG-LS JPEG XR (HD Photo) PGF (англ.) TIFF WebP Анімаційні: APNG GIF MNG

Векторні

AI CDR EMF EPS PS SVG WMF XPS Анімаційні: SVG SWF 3D: 3DS VRML X3D

Комплексні