На цій сторінці показано неперевірені зміни
Розширення: | .tga, .icb, .vda, .vst |
---|---|
MIME-тип: | image/x-targa |
Type code: | 'TPIC' |
Узагальнений ідентифікатор типу: | com.truevision.tga-image |
Тип формату: | растровийграфічний формат |
Truevision TGA (TGA) —растровийграфічний формат. Початково був розробкою компанії Truevision Inc для графічних адаптерів власного виробництва ще в1984 році, але надалі набув популярности та був використаний у різних платформах, особливо в галузі обробки відео таанімації.
Зазвичай файли цього формату мають розширення.tga у системахDOS-типу, або.tpic на комп'ютерахMacintosh. Формат підтримуєглибину кольору 1—32біти напіксель. Є також підтримкаальфа-каналів, стисканняRLE.
Файл зображення TGA складається з п'яти зон, кожна з яких містить одне або більше полів фіксованої або змінної довжини:
Останні три зони додано в специфікацію формату у вересні 1989 р. З цієї причини файли, створені за допомогою ПЗ, написаного до цієї дати, можуть не містити цих зон.
Щоб визначити, чи належить файл до оригінальної версії або до нової, слід переглянути останні 26 байт файлу. Для нової версії ці байти міститимуть підвал файлу, байти 8-23 якого містять набір ASCII символів «TRUEVISION-XFILE». Наявність цього рядка означає, що файлможе містити зони (3) і (4).
Сам підвал має наступну будову(байт — призначення):
Докладніший опис наприкінці статті.
Вказує кількість байт, що містяться в полі Ідентифікатора. Максимальна кількість символів — 255. Нульове значення вказує, що файл не містить поле Ідентифікатор.
Вказує тип мапи кольорів, включеної у файл. На 1991 рік визначено два значення — 0 (файл не містить карти кольорів) і 1 (файл містить мапу кольорів). Перші 128 значень цього поля зарезервовано для використання Truevision, останні можуть бути використані розробниками ПЗ.
True-Color зображення зазвичай не використовують мапу кольорів, але деякі додатки зберігають інформацію про палітру або інші дані в цьому полі. Рекомендується перевіряти значення полятип зображення (описано в наступному пункті), щоб переконатися що файл може використовувати ці дані. Інакше це поле можна ігнорувати.
При записі або збереженні файлу в цілях сумісності потрібно заповнювати це поле нульовими значеннями. У новому форматі файлу для збереження даних розробника існує окрема зона.
TGA файл може бути використаний для збереження зображень з різною глибиною кольору. Визначено сім типів зображень:
значення | опис | використовуєтьсямапа кольорів | Компресія |
---|---|---|---|
0 | Немає зображення | ні | ні |
1 | Зображення з палітрою | так | ні |
2 | Truecolor зображення | ні | ні |
3 | Монохромне зображення | ні | ні |
9 | Зображення з палітрою | так | так |
10 | Truecolor зображення | ні | так |
11 | Монохромне зображення | ні | так |
Перші 128 значень зарезервовано для використання Truevision, останні можуть бути використані розробниками.
Це поле і його пункти описують мапу кольорів (якщо вона використовується). Якщо поле Color Map Type (описано вище) містить нуль, ці п'ять байт також повинні містити нулі.
Вказує на початковий елемент палітри.
Вказує кількість елементів палітри.
Зазвичай використовуються значення 15, 16, 24 або 32.
Це поле описує розміри, положення на екрані і глибину пікселя зображення.
Визначає абсолютну координату лівого нижнього кута зображення по горизонталі.
Визначає абсолютну координату лівого нижнього кута зображення по вертикалі.
Ширина зображення в пікселях.
Висота зображення в пікселях.
Визначає кількість біт на піксель.
Біти 3-0 цього поля визначають кількість атрибутивних бітів на піксель.Біти 5 і 4 визначають порядок передачі піксельних даних з файлу на екран. Біт 4 встановлюється для порядку «зліва направо», біт 5 — для порядку «зверху вниз».Біти 7 і 6 в цілях сумісності мають бути встановлені в 0.
Це поле є ідентифікатором файлу і може мати довжину від 0 до 255 байт.
ЯкщоТип мапи Кольорів (описано више) містить нуль, це поле буде відсутнє.ПоляРозмір елементу мапи кольорів іДовжина мапи кольорів дозволяють визначити розмір цього поля.Кожен елемент мапи кольорів займає ціле число байт; кожен колірний канал займає MIN (Розмір елементу мапи кольорів/3 , 8) біт, тобто для розміру елементу в 24 кожен з трьох каналів кольору займе 8 байт, так само, як і для елементів розміром 32 біта.
Це поле містить дані про ширину та висоту пікселів. Кожен піксель вказує дані зображення в одному з наступних форматів: самостійний індекс елементу мапи кольорів, окремі значення для кожного каналу кольору або окремі індекси інтенсивності для формату Direct Color.
Ця зона може мати будь-який розмір і містити будь-який тип інформації на розсуд розробника ПЗ, хоча рекомендується використовувати її виключно для зберігання специфічної інформації, не призначеної для іншого ПЗ і не описаної в специфікації формату.Оскільки файл може містити більше ніж одну зону розробника, існує список зон, «мапа» полів, включених в ці зони. У байтах 4-7підвалу файлу міститься зсув від початку файлу на початок списку зон розробника. Якщо ці байти містять нульове значення, списку зон і самих зон у файлі немає.
Вказує кількість тегів, що містяться в списку.Решта частини списку після цього значення містить послідовності тег-зсув-розмір.
Кожен тег може містити значення від 0-65535. Значення 0-32767 можуть бути використані розробниками, останні зарезервовані для використання Truevision.
Містить значення, вказуюче зсув від початку файлу на початок поля, на яке посилається тег.
Вказує розмір поля, на яке посилається тег.
Зсув до Зони розширення зберігається впідвалі файлу. Якщо зсув дорівнює нулю — файл не містить зони розширення.
Містить довжину зони в байтах. Для версії 2.0 формату, це значення має бути рівним 495.
Місце для ASCII рядка завдовжки до 40 символів і одного нульового байта. Якщо поле не використовується, воно заповнюється нулями або пропусками. Останній символ завжди має дорівнювати нулю.
Місце для чотирьох рядків, кожна з яких може вміщати нульовий байт і до 80 значущих символів. Невикористане місце заповнюється нулями або пропусками, 81-й байт кожного рядка має дорівнювати нулю.
Це поле містить послідовність з шести 2-х байтових значень для дати і часу збереження зображення (місяць-день-рік-час-хвилина-секунда). Якщо це поле не використовується, воно заповнюється нулями.
Місце для 40 ASCII символів і одного нульового байта.
Аналогічно полюдата/час, місце для зберігання трьох значень (час-хвилина-секунда).
Місце для рядка-ідентифікатора ПЗ, за допомогою якого був створений файл.
Поле містить дві складові частини — 2-х байтне число і ASCII символ. Місце для збереження версії ПЗ, за допомогою якого був створений файл.
4-х байтне значення, що визначає ключовий колір альфа каналу у форматі ARGB. Якщо зображення не містить альфа-каналу, значення першого байта встановлюється в нуль.Ключовий колір визначає колір фону або «прозорий колір». Якщо поле не використовується, воно заповнюється нулями.
Містить два 2-х байтних значення, визначальну ширину і висоту пікселя відповідно. Однакові ненульові значення визначають квадратний піксель, нуль в другому значенні означає, що співвідношення не вказане.
Містить два 2-х байтних значення, використовуваних як чисельник і знаменник при обчисленні дробового значення гамми. Результат ділення повинен знаходитися в діапазоні від 0 до 10.0 і мати тільки один знак в дробовій частині. Коли це поле не використовується, обидва значення мають дорівнювати один одному (щоб отримати 1.0 після ділення), або друге значення має дорівнювати нулю.
Містить зсув в байтах від початку файлу до таблиці корекції. Таблиця може бути поміщена в будь-якому місці після поля Даних Зображення і перед Підвалом файлу. Якщо зображення не вимагає корекції, це значення дорівнює нулю.
Містить зсув до зменшеної копії зображення, що міститься у файлі. Зображення записується між Таблицею Скан Ліній (описано нижче) і Підвалом файлу.
Зсув до початку таблиці Скан Ліній.
Це значення визначає тип даних альфа-каналу, збережених із зображенням.
Pre-multiplied Alpha Example: Suppose the Alpha channel data is being used to specify the opacity of each pixel (for use when the image is overlayed on another image), where 0 indicates that the pixel is completely transparent and a value of 1 indicates that the pixel is completely opaque (assume all component values have been normalized). A quadruple (a, r, g, b) of (0.5, 1, 0, 0) would indicate that the pixel is pure red with a transparency of one-half. For numerous reasons (including image compositing) is is better to pre-multiply the individual color components with the value in the Alpha channel. A pre-multiplication of the above would produce a quadruple (0.5, 0.5, 0, 0).
A value of 3 in the Attributes Type Field (field 23) would indicate that the color components of the pixel have already been scaled by the value in the Alpha channel. For more information concerning pre-multiplied values, refer to the 1984 SIGGRAPH Conference Proceedings.
Таблиця повинна містити набір зсувів в байтах від початку файлу до початків скан ліній, у відповідному порядку (наприклад зверху вниз/знизу вгору).
Зменшена копія зображення, що міститься у файлі. Зберігається в тому ж форматі, що і повнорозмірне, але без застосування методів стискання. Перший байт містить ширину копії в пікселях, другої, — висоту. Truevision не рекомендовано використовувати зображення розміром більш ніж 64х64 пікселя.
Таблиця містить 256х4 2-х байтних значень, кожна послідовність з чотирьох таких значень відповідає каналам ARGB.
Передостанній символ сигнатуриповинен бути символом «.»(period), інакше файл не буде розпізнаний як правильний файл TGA.
Розробник не зобов'язаний читати, записувати або використовувати зони розширення або розробника, але, навіть коли вони не використовуються, рекомендується включати у файл Підвал і вказувати як зсуви до невживаних зон нулі.
![]() | Це незавершена стаття проінформаційні технології. Ви можетедопомогти проєкту,виправивши або дописавши її. |