|

Заголовок TGA-файла
OK, берем книжку 'Graphics File Formats, 2nd Edition' (форматы графических
файлов) авторов David C. Kay & John R. Levine, и читаем формат заголовка
файла для хранения изображения формата Targa.
|
Описание заголовка файла для изображения формата
Targa |
|
Смещение |
Длина (в байтах) |
Описание |
| 0 |
1 |
Длина ID-поля (ID Field
Length) |
| 1 |
1 |
Тип цветовой карты (Color-map
Type) |
| 2 |
1 |
Тип изображения (Image
Type) |
| Информация о
специфике цветовой карты (Color-map-specific Info) |
| 3 |
2 |
Первое включение цветовой карты
(First Color-map Entry) |
| 5 |
2 |
Длина цветовой карты (Color-map
Length) |
| 7 |
1 |
Размер цветовой карты (Color-map
Entry Size) |
| Информация о
специфике изображения (Image-specific Info) |
| 8 |
2 |
Горизонтальная координата начала
изображения (Image X Origin) |
| 10 |
2 |
Вертикальная координата начала
изображения (Image Y Origin) |
| 12 |
2 |
Ширина изображения (Image
Width) |
| 14 |
2 |
Высота изображения (Image
Height) |
| 16 |
1 |
Бит на пиксел
(Bits-Per-Pixel) |
| 17 |
1 |
Биты дескриптора изображения
(Image-Descriptor Bits) |
Для изображений с разрешением True-color значение типа цветовой карты должно
равняться нулю, в остальных случаях единице. В случае, когда цветовая карта
присутствует, ее размер должен равняться значению 15, 16, 24 или 32. Для
значений 15 и 16 каждая цветовая карта при загрузке использует 2 байта в
формате:
Верхний байт Нижний байт
A RRRRR GG GGG BBBBB
где бит 'A' устанавливается в 0 для 15-битных цветовых величин. 24-битный
размер карты хранится как три байта в следующем порядке: (B)lue (синий), (G)reen
(зеленый), и (R)ed (красный). 32-битный размер цветовой карты использует четыре
байта, ее порядок такой: (B)lue (синий), (G)reen (зеленый), (R)ed (красный) и
значение атрибута - (A)ttribute.
Наконец, код, хранящий тип изображения (Image Type) должен содержать одно из
следующих значений:
Код Описание
---- -----------
0 Изображение отсутствует
1 Цветовая карта, без компрессии
2 True-color, без компрессии
3 Черно-белое, без компрессии
9 Цветовая карта, RLE-компрессия
10 True-color, RLE-компрессия
11 Черно-белое, RLE-компрессия Горизонтальная и вертикальная
координата начала изображения (Image X & Y Origins) и размеры изображения
(Image Width & Height) разъяснений не требуют. Бит на пиксел
(Bits-Per-Pixel) обозначает количество битов, содержащихся в точке изображения и
может быть равен значению 8, 16, 24, и 32.
Биыт дескриптора изображения (The Image Descriptor bytes) содержит несколько
полей битов, которые содержат следующую информацию:
Биты Описание
---- -----------
0-3 Биты атрибутов (описаны ниже)
4 Ориентация Слева-на-Право 0=Л/П 1=П/Л
5 Ориентация Вехр/Низ 0=Н/В 1=В/Н
6-7 Чередование линий 00H=Нет, 40H=2 линии, 80H=4 линии Биты
атрибутов используются для определения атрибутов цветов в цветовой карте или
true-color пикселах. 0 - alpha-данные (alpha-канал) отсутствуют, 1 -
игнорирование или неопределено, 2 - не определено, но должно быть сохранено, 3 -
наличие alpha-данных и 4 - информация о пикселе уже была умножена на
alpha-величину.
Файлы версии Targa 2.0 также имеют файловый колонтитул, который может
содержать дополнительное изображение или комментарии. Эти файлы всегда
заканчиваются строкой-терминатором 'TRUEVISION-TARGA.'. Так, если ваше
Targa-изображение заканчивается значением 'TRUEVISION-TARGA.' + 00H, то вы
можете извлечь восемь байтов до строки, чтобы найти начало расширенной области и
месторасположение каталога сборки данного файла. Обычно файловый колонтитул
версии 2.0 имеет следующий формат:
|
Формат файлового колонтитула Targa версии
2.0 |
|
Байт |
Длина |
Описание |
| 0 |
4 |
32-битное смещение расширенной
области |
| 4 |
4 |
32-битное смещение каталога
сборки |
| 8 |
17 |
TRUEVISION-TARGA. |
| 25 |
1 |
Двоичный ноль ($0) |
Я не собираюсь давать полные описания каталога сборки и области расширения.
Вместо этого я приведу описание "почтовой марки", которая может содержаться в
формате Targa V2.0. Данная "марка"-иконка должна иметь размеры 64 X 64 пикселей,
представляет собой уменьшенный образ изображения, может включаться в файл по
желанию компоновщика и не является обязательной.
|
Область расширения |
|
Смещение |
Длина |
Описание |
| 0 |
2 |
Размер области расширения
(должна быть 495) |
| 2 |
41 |
Имя автора |
| 43 |
81 |
Авторские
комментарии |
| 124 |
81 |
Авторские
комментарии |
| 205 |
81 |
Авторские
комментарии |
| 286 |
81 |
Авторские
комментарии |
| 367 |
2 |
Месяц создания |
| 369 |
2 |
День создания |
| 371 |
2 |
Год создания |
| ... |
... |
... |
| 482 |
4 |
Смещение в файле таблицы
цветовой коррекции |
| 486 |
4 |
Смещение в файле изображения
"почтовой марки" |
| 490 |
4 |
Смещение в файле таблицы
чередования линий |
| 494 |
1 |
Байты атрибутов |
Данная "почтовая марка", при наличии, может быть использована вами
непосредственно. Она хранится в виде несжатого изоюражения в том же цветовом
формате (цветовой карте или True-color), как и исходное изображение.
|