Truevision TGA | |
---|---|
Extensión | .tga, .tpic, o .vda_.vst.icb |
tipo MIME | imagen/x-targa e imagen/x-tga |
Desarrollador | Truevision [d] [1] |
Tipo de formato | gráficos de trama |
Truevision TGA (TGA) es un formato de gráficos de trama . Creado originalmente por Truevision Inc. para adaptadores de gráficos de su propia producción en 1984 , pero luego se hizo popular en una variedad de plataformas, especialmente en el campo del procesamiento de video y la animación.
Por lo general, los archivos en este formato tienen la extensión .tga en sistemas DOS heredados o .tpic en computadoras Macintosh . El formato admite profundidades de color de 1 a 32 bits por píxel . Hay soporte para canales alfa , compresión RLE .
Un archivo de imagen TGA consta de cinco zonas, cada una de las cuales contiene uno o más campos de longitud fija o variable:
Las últimas tres zonas se agregaron a la especificación de formato en septiembre de 1989. Por este motivo, es posible que los archivos creados con software escrito antes de esta fecha no contengan estas zonas. Para determinar si un archivo es la versión original o la nueva versión, lea los últimos 26 bytes del archivo. Para la nueva versión, estos bytes contendrán el pie de página del archivo, de los cuales los bytes 8-23 contienen el juego de caracteres ASCII "TRUEVISION-XFILE". La presencia de esta línea significa que el archivo puede contener zonas (3) y (4).
El sótano en sí tiene la siguiente estructura (byte - propósito):
Descripción más detallada al final del artículo.
Especifica el número de bytes contenidos en el campo Identificador. El número máximo de caracteres es 255. Un valor de cero indica que el archivo no contiene un campo Identificador.
Especifica el tipo de mapa de color incluido en el archivo. Por el momento (la descripción es de enero de 1991), se definen dos valores: 0 (el archivo no contiene un mapa de colores) y 1 (el archivo contiene un mapa de colores). Los primeros 128 valores de este campo están reservados para uso de Truevision, el resto puede ser utilizado por desarrolladores de software.
Las imágenes de color verdadero no suelen utilizar un mapa de colores, pero algunas aplicaciones almacenan información de la paleta u otros datos en este campo. Se recomienda verificar el valor del campo Tipo de imagen (descrito en el siguiente párrafo) para asegurarse de que el archivo pueda usar estos datos. De lo contrario, este campo puede ser ignorado.
Al escribir o guardar un archivo, por razones de compatibilidad, este campo debe llenarse con valores cero. En el nuevo formato de archivo, hay una zona separada para almacenar datos del desarrollador.
El archivo TGA se puede utilizar para guardar imágenes con diferente profundidad de color. Se definen siete tipos de imágenes:
Sentido | Descripción | Mapa de colores usados | Se utiliza la compresión |
---|---|---|---|
0 | Sin imagen | No | No |
una | Imagen con paleta | Sí | No |
2 | imagen en color verdadero | No | No |
3 | imagen monocromática | No | No |
9 | Imagen con paleta | Sí | Sí |
diez | imagen en color verdadero | No | Sí |
once | imagen monocromática | No | Sí |
Los primeros 128 valores están reservados para el uso de Truevision, el resto puede ser utilizado por los desarrolladores.
Este campo y sus subsecciones describen el mapa de colores (si se usa). Si el campo Tipo de mapa de colores (descrito anteriormente) contiene cero, estos cinco bytes también deben contener ceros.
Campo | El tamaño | Descripción |
---|---|---|
Índice del primer elemento | 2 bytes | Apunta al elemento inicial de la paleta. |
Longitud de la tarjeta de color | 2 bytes | Especifica el número de elementos de la paleta. |
Tamaño del elemento del mapa de colores | 1 byte | El número de bits por elemento de paleta. Los valores comúnmente utilizados son 15, 16, 24 o 32. |
Este campo describe las dimensiones, la posición de la pantalla y la profundidad de píxeles de la imagen.
Campo | El tamaño | Descripción |
---|---|---|
Posición X de la imagen | 2 bytes | Especifica la coordenada horizontal absoluta de la esquina inferior izquierda de la imagen. |
Imagen Posición Y | 2 bytes | Especifica la coordenada vertical absoluta de la esquina inferior izquierda de la imagen. |
ancho de la imagen | 2 bytes | El ancho de la imagen en píxeles. |
Altura de imagen | 2 bytes | La altura de la imagen en píxeles. |
Profundidad de bits de color | 1 byte | Especifica el número de bits por píxel a utilizar. |
Descriptor de imagen | 1 byte | Los bits 3-0 de este campo determinan el número de bits del canal alfa.
Los bits 5 y 4 determinan el orden en que se transfieren los datos de píxeles del archivo a la pantalla. El bit 4 está configurado para el orden de derecha a izquierda, el bit 5 para el orden de arriba hacia abajo. Los bits 7 y 6 deben establecerse en 0 para compatibilidad. |
Este campo es el identificador del archivo y puede tener una longitud de 0 a 255 bytes.
Si el tipo de mapa de color (descrito anteriormente) contiene cero, este campo se omitirá. Los campos Tamaño del elemento del mapa de colores y Longitud del mapa de colores le permiten definir el tamaño de este campo. Cada elemento del mapa de colores ocupa un número entero de bytes; cada canal de color ocupa MIN ( Tamaño de elemento del mapa de color /3, 8) bits, por lo que para un tamaño de elemento de 24, cada uno de los tres canales de color ocupará 8 bits, al igual que para los elementos de 32 bits.
Este campo contiene (ancho x alto) píxeles. Cada píxel especifica datos de imagen en uno de los siguientes formatos: un índice de elemento de mapa de color único, valores individuales para cada canal de color o índices de intensidad individuales para el formato de color directo.
Esta zona puede ser de cualquier tamaño y contener cualquier tipo de información a discreción del desarrollador del software, aunque se recomienda que se utilice únicamente para almacenar información específica no destinada al resto del software y no descrita en la especificación de formato. Dado que un archivo puede contener más de una zona de desarrollador, hay una lista de zonas que contiene un "mapa" de los campos incluidos en esas zonas. Los bytes 4 a 7 del pie de página del archivo contienen el desplazamiento desde el principio del archivo hasta el principio de la lista de zonas de desarrollo. Si estos bytes contienen un valor nulo, la lista de zonas y las zonas mismas no están en el archivo.
Especifica el número de etiquetas contenidas en la lista. El resto de la lista después de este valor contiene secuencias de tamaño de desplazamiento de etiquetas.
Cada etiqueta puede contener un valor de 0 a 65535. Los desarrolladores pueden usar los valores 0-32767, el resto está reservado para el uso de Truevision.
Contiene un valor que especifica el desplazamiento desde el principio del archivo hasta el principio del campo al que hace referencia la etiqueta.
Especifica el tamaño del campo al que hace referencia la etiqueta.
El desplazamiento de la Zona de expansión se almacena en el pie de página del archivo. Si el desplazamiento es cero, el archivo no contiene una zona de extensión.
Contiene la longitud de la zona en bytes. Para la versión 2.0 del formato, este valor debe ser 495.
Espacio para una cadena ASCII de hasta 40 caracteres y un byte nulo. Si un campo no se usa, se rellena con ceros o espacios. El último carácter siempre debe ser cero.
Espacio para cuatro líneas, cada una de las cuales puede contener un byte nulo y hasta 80 caracteres significativos. El espacio no utilizado se llena con ceros o espacios, el byte 81 de cada línea debe ser cero.
Este campo contiene una secuencia de seis valores de 2 bytes para la fecha y hora en que se guardó la imagen (mes-día-año-hora-minutos-segundos). Si este campo no se utiliza, se rellena con ceros.
Espacio para 40 caracteres ASCII y un byte nulo.
Similar al campo Fecha/Hora , un lugar para almacenar tres valores (hora-minuto-segundo).
Un lugar para la cadena de ID del software con el que se creó el archivo.
El campo contiene dos componentes: un número de 2 bytes y un carácter ASCII. La ubicación para guardar la versión del software con el que se creó el archivo.
Un valor de 4 bytes que define el color clave del canal alfa en formato ARGB. Si la imagen no contiene un canal alfa, el valor del primer byte se establece en cero. El color clave define el color de fondo o "color transparente". Si el campo no se utiliza, se rellena con ceros.
Contiene dos valores de 2 bytes que definen el ancho y alto de un píxel, respectivamente. Los valores iguales distintos de cero definen un píxel cuadrado, cero en el segundo valor significa que no se especifica una proporción.
Contiene dos valores de 2 bytes utilizados como numerador y denominador al calcular el valor gamma fraccionario. El resultado de la división debe estar entre 0 y 10,0 y debe tener un solo decimal. Cuando no se utiliza este campo, ambos valores deben ser iguales entre sí (para obtener 1,0 después de la división), o el segundo valor debe ser cero.
Contiene el desplazamiento en bytes desde el principio del archivo hasta la tabla de corrección. La tabla se puede colocar en cualquier lugar después del campo de datos de la imagen y antes del final del archivo. Si la imagen no requiere corrección, este valor es cero.
Contiene un desplazamiento a una copia reducida de la imagen contenida en el archivo. La imagen se escribe entre la tabla de líneas de exploración (descrita a continuación) y el pie de página del archivo.
Desplazamiento al comienzo de la tabla Scan Lines.
Este valor especifica el tipo de datos del canal alfa guardados con la imagen.
Un ejemplo de un canal alfa premultiplicado. Los datos del canal alfa se usan para indicar el grado de opacidad de cada píxel (usado cuando una imagen se superpone a otra imagen), donde 0 indica que el píxel es completamente transparente y un valor de 1 indica que el píxel es completamente opaco (suponiendo que todos los valores de los componentes están normalizados). Un cuadrete de números (a, r, g, b) con valores (0,5, 1, 0, 0) indicará que el píxel es rojo puro con una transparencia de 0,5. Por varias razones (incluida la creación de imágenes compuestas), es mejor premultiplicar los componentes de color individuales por el valor del canal alfa. Esta multiplicación dará los siguientes cuatro números (0.5, 0.5, 0, 0).
Un valor de 4 en el campo Tipo de atributo (campo 24) indicará que los componentes de color del píxel ya están escalados por el valor del canal alfa. Para obtener detalles sobre los valores premultiplicados, consulte las actas de la conferencia SIGGRAPH 1984.
La tabla debe contener un conjunto de compensaciones en bytes desde el comienzo del archivo hasta el comienzo de las líneas de escaneo, en el orden apropiado (por ejemplo, de arriba a abajo/de abajo a arriba).
Una copia reducida de la imagen contenida en el archivo. Guardado en el mismo formato que el tamaño completo, pero sin el uso de métodos de compresión. El primer byte contiene el ancho de la copia en píxeles, el segundo la altura. Truevision no recomienda utilizar imágenes de más de 64x64 píxeles.
La tabla contiene 256x4 valores de 2 bytes, cada secuencia de cuatro de estos valores corresponde a canales ARGB.
El penúltimo carácter de la firma debe ser un carácter "." (punto), de lo contrario, el archivo no se reconocerá como un archivo TGA válido.
No se requiere que el desarrollador lea, escriba o use extensiones o zonas de desarrollador, pero incluso cuando no se usan, se recomienda incluir Pie de página en el archivo y especificar ceros como compensaciones para las zonas no utilizadas.
contenedores de medios | |
---|---|
Audio video | |
Audio | |
Música | |
Ráster | |
Vector | |
Complejo |