Mostrar/Ocultar TOC

Tabla de Contenidos del Libro
Prefacio
Capítulo 1: Introducción
Capítulo 2: Fundamentos
Capítulo 3: Mapas de Bits
Capítulo 4: Archivos Vectoriales
Capítulo 5: Metaarchivos
Capítulo 6: Dependencias de Plataforma
Capítulo 7: Conversión de Formatos
Capítulo 8: Trabajando con Archivos Gráficos  
Capítulo 9: Compresión
Capítulo 10: Multimedia
Formato: Adobe Illustrator
Formato: Adobe Photoshop
Formato: Atari ST
Formato: AutoCAD DXF
Formato: Autodesk 3D Studio
Formato: BDF
Formato: BRL-CAD
Formato: BUFR
Formato: CALS Raster
Formato: CGM
Formato: CMU
Formato: DKB
Formato: Dore Raster
Formato: DPX
Formato: Dr. Halo
Formato: DVM Movie
Formato: PostScript Encapsulado
Formato: FaceSaver
Formato: FAX
Formato: FITS
Formato: FLI
Formato: GEM Raster
Formato: GEM VDI
Formato: GIF
Texto en Inglés de Este Formato de Archivo
Imagen del CD-ROM de la 2° Edición
Imagen del CD-ROM de la 1° Edición (Torrent y HTTPS)
Versión Hipertexto del CD-ROM de la 2° Edición (En Inglés)
Versión Hipertexto del CD-ROM de la 2° Edición (En Ruso)

Formato de Archivo — Adobe Illustrator

Formato de Archivo — Adobe Illustrator


NOMBRE: Adobe Illustrator
TAMBIÉN CONOCIDO COMO: AI, Adobe AI
TIPO: Metaarchivo
COLORES: Ilimitados
COMPRESIÓN: Ninguna
TAMAÑO MÁXIMO DE IMAGEN: No Aplica (NA)
MÚLTIPLES IMÁGENES POR ARCHIVO:
FORMATO NUMÉRICO: ASCII
ORIGINADOR: Adobe
PLATAFORMA: Macintosh, MS Windows, NeXT
APLICACIONES SOPORTADAS: Adobe Illustrator, la mayoría de paquetes de publicación de escritorio, la mayoría de paquetes de dibujo, Adobe Streamline
ESPECIFICACIÓN EN CD:
CÓDIGO EN CD: No
IMÁGENES EN CD: No
MIRA TAMBIÉN: CGM
UTILIZACIÓN: Almacenamiento e intercambio de arte basado en líneas.
COMENTARIOS: Un formato ampliamente usado para el intercambio de objetos 2D. Los archivos básicos son simples de escribir. Desafortunadamente, los archivos creados por aplicaciones que implementan la especificación AI completa pueden ser grandes y complejos y pueden ser lentos de renderizar.

Resumen

Originalmente escrito para la plataforma Macintosh, Adobe Illustrator es una aplicación bien conocida y ampliamente usada. ctualmente hay versiones para Macintosh, Microsoft Windows, y NeXT. Mucho del poder de Adobe Illustrator proviene de su implementación de splines Bezier y objetos de dibujo, y del hecho de que presenta una interfaz de usuario simple para el posicionamiento preciso de objetos de dibujo basados en splines. Las splines Bezier tienen algunas ventajas para el modelado de objetos naturales (y a veces creados por el hombre). Todos los archivos se usan también para distribuir clip art.

El formato AI encapsula y formaliza un subconjunto del lenguaje de descripción de página (PDL) PostScript en un archivo estructurado. Dichos archivos están pensados para ser dibujados en una impresora PostScript, pero pueden incluir una versión de mapa de bits de la imagen para facilitar la vista previa. PostScript es un lenguaje poderoso y complejo en su implementación completa, y esta complejidad se debe parcialmente a su habilidad para especificar casi cualquier cosa que pueda aparecer en un dispositivo de salida 2D. AI, sin embargo, está dirigido al almacenamiento de datos gráficos en el sentido convencional: dibujos, arte, y rótulos usados para propósitos ornamentales y de exhibición. Nota que los archivos AI pueden ser muy complejos. PostScript deriva mucho de su poder de la habilidad de definir secuencias de operaciones y luego concatenarlas usando una sintaxis simple. Esta complejidad oculta es a veces, pero no siempre, minimizada en los archivos AI.

Los archivos AI simples son bastante fáciles de construir, y una aplicación puede crear archivos que se pueden leer por cualquier lector de AI o pueden imprimirse en cualquier impresora PostScript. Leer archivos AI es otro problema totalmente diferente. Ciertas operaciones pueden ser difíciles de simular para una aplicación de renderización. A la luz de esto, los desarrolladores a menudo eligen no renderizar la imagen a partir de los datos de línea del subconjunto de PostScript en el archivo. Nota, sin embargo, que casi toda la imagen puede reconstruirse usualmente usando operaciones simples. Si deseas desarrollar un lector AI, puede hacerse, y puedes obtener pistas al examinar el código fuente del sistema GNU GhostScript, el cual ofrece una implementación casi completa del lenguaje PostScript.

PostScript, y consecuentemente el subconjunto de AI, tiene su propio lenguaje y convenciones. Sugerimos que leas los documentos de PostScript antes de trabajar con archivos AI o examinar detenidamente los documentos de especificación incluidos en el CD-ROM que viene con este libro. Estos se referencian al final de este artículo.



Organización del Archivo

Los archivos AI consisten de una serie de líneas ASCII, las cuales pueden ser comentarios, datos, comandos, o combinaciones de comandos y datos. Los datos se colocan y se sacan de una pila, y los operadores usan los datos en la pila en orden LIFO. PostScript es a veces visto como un PDL orientado a página. Las líneas, sin embargo, deben ser analizadas primero como líneas completas y luego tokenizadas. Las líneas de operadores usualmente tienen la siguiente forma:

   arg-list operator

Los conceptos clave son trayectorias (paths), trazos (strokes), rellenos (fill), y el estado de los gráficos. Una trayectoria es seguida por un cursor gráfico. El trazado (stroking) resulta en una ruta o porción de una ruta eventualmente siendo desplegada en la superficie de renderizado. Los rellenos operan en rutas cerradas. Los resultados del trazado (stroking) y lo que sucede realmente durante una operación de rellenado (entre otras cosas) se determinan por el estado de los gráficos.

Los commmentarios son cualquier línea en donde el primer carácter que no es espacio en blanco es %. Las líneas especiales, conocidas como comentarios estructurador, se designan por un doble comentario %%. Un + que sigue inmediatamente a un designador de comentario estructurador indica que los datos en la línea están asociados con el comentario estructurador anterior.

En la discusión que sigue, lly, lly, urx, y ury se refieren a la x inferior izquierda, y inferior izquerda, x superior derecha, y y superior derecha, respectivamente. Estos son usados para denotar rectángulos en cuadros delimitadores y son similar a como los rectángulos fueron especificados en el entorno de desarrollo original de Macintosh. Esto puede provocar problemas en otros sistemas porque muchos objetos están orientados relativos a sus cuadros delimitadores. Los desarrolladores en otros entornos deberían considerarse advertidos.

Todos los archivos están organizados de la siguiente forma: una línea de ID de archivo, seguido por una cabecera, seguido por el resto del archivo en el que los objetos gráficos están definidis. En terminología de Adobe, la cabecera consiste de comentarios estructuradores y otros comentarios conocidos como el Prólogo. A continuación de la cabecera está la sección de Organización del Script, la cual consiste de los comandos de dibujo que definen los objetos en la imagen, una sección llamada el Trailer de Página, y una sección llamada el Trailer del Documento. Los archivos son terminados con el comentario estructurador %%EOF, señalándole a la aplicación de renderización o al dispositivo que los datos asociados con la imagen a renderizar están completos.

Línea de ID
Prólogo
Comentarios
Organización de Script
Objetos
Trailer de Página
Trailer de Documento



Detalles del Archivo

Todos los archivos AI comienzan con una línea de comentario en el siguiente formato:

   %!PS-Adobe-X.X EPSF-Y.Y

en donde X.X y Y.Y son el AI e el EPSF (formato del mapa de bits encapsulado), respectivamente. Recuerda que tu lector debe examinar y tokenizar la primera línea, sea que esté o no en un comentario, a fin de identificar el archivo.

Esto está seguido por una serie de comentarios estructuradores y otros comentarios definidos por Adobe y una serie de conjuntos de procedimientos que conforman la cabecera.

%Línea de ID de Archivo
%%BeginProlog
   .
   .                           lista de comentarios de cabecera
   .
%%EndComments
   .
   .                           lista de definiciones de conjuntos de procedimientos
   .
%%EndProlog

Una cabecera típica aparece de la siguiente manera:

%%BeginProlog
%%Creator: Adobe Illustrator 4.0
%%For: John Doe Xylane University
%%Title: Figure 1.1
%%CreationDate: 12-13-95 03:43:15
%%BoundingBox: 0 0 512 512
%%EndComments
%%DocumentSuppliedResources: procset AdobeCustomColor Red123 3 0
%%EndProlog

Nota que Adobe Illustrator puede guardar archivos localmente en una versión "sin cabecera", en cuyo caso mucha de esta información —excepto por la línea de ID de archivo y los comentarios de BoundingBox (cuadro delimitador)— estará ausente. Los archivos guardados por Adobe Illustrator para exportarse generalmente contendrán información de cabecera más extensa. Adobe recomienda que un documento en el siguiente formato es el mínimo aceptable para la lectura por Adobe Illustrator:

%!PS-Adobe-3.0
%%BoundingBox llx lly urx ury
%%EndComments
%%EndProlog
%%BeginSetup
   .
   .                           codificación de fuente
   .
   .
   .                           definiciones de patrón
   .
%%EndSetup
   .
   .                           definición de objeto
   .
%%Trailer
%%EOF

Comentarios Estructuradores

Algunos comentarios de estructuración se usan solo en la cabecera. Otros aparecen más adelante en el archivo.

La versión de Microsoft Windows de Adobe Illustrator (v4.0) usa los siguientes comentarios estructuradores:

%%Creator: Adobe Illustrator(TM) version
%%For: user, organization
%%Title: title
%%CreationDate: date, time
%%DocumentProcSets: Adobe_Illustrator_version level revision
%%DocumentSuppliedProcsets: Adobe_Illustrator_version level revision
%%DocumentFonts: fonts
%%BoundingBox: llx lly urx ury
%%TemplateBox: llx lly urx ury
%%Template: filename
%%PageOrigin: x y
%%PrinterName: printer
%%PrinterRect: llx lly urx ury

Estos últimos cuatro comentarios normalmente se almacenan en el tenedor (fork) de recursos en el entorno Macintosh.

Los siguientes son comentarios usados en la cabecera. La mayoría son opcionales, y algunos son específicos de Macintosh y son ignorados en otras plataformas.

%%BeginProlog
%%BoundingBox: llx lly urx ury                 Enteros
%%CMYKCustomColors: custom-color-name          
%%CreationDate: date time                      Cadenas PostScript válidas
%%Creator: name version                        Programa usado para crear el archivo
%%DocumentCustomColors: custom-color           Color definido en el archivo
%%DocumentFiles: file-to-importv                
%%DocumentFonts: font-name                     Fuente usada en la imagen
%%DocumentNeededResources: other-resources     Otros recursos necesarios para reconstruir la imagen
%%DocumentProcessColors: colors                Colores en la definición del modelo de color
%%EndComments                                  
%%EndProlog                                    
%%EOF                                          
%%For: name                                    Información opcional
%%IncludeResource: name                        Nombre misceláneo necesario para reconstruir la imagen
%%Title: name                                  Nombre de imagen

Conjuntos de Procedimientos

Las definiciones de conjuntos de procedimientos comiensan con una palabra clave DocumentSuppliedResources, y son seguidos por la palabra clave procset y una lista de argumentos que consiste de una o más de las siguientes:

Adobe_cmykcolor
Adoube_cshow
Adobe_customcolor
Adobe_Illustrator_AI3
Adobe_packedarray
Adobe_pattern_AI3
Adobe_pattern_KI3
Adobe_typography_AI3

Estas son seguidas por los números de versión y de revisión, como se muestra en el siguiente ejemplo:

   DocumentSuppliedResources: procset Adobe_cshow 3 4

Este es el caso para todos excepto para Adobe_customcolor, el cual agrega el nombre del color y tiene la siguiente sintaxis:

   DocumentSuppliedResources: procset Adobe_customcolor Red123 3 4

Nota que entre los comentarios estructuradores, solo BoundingBox debe estar incluido en cada archivo AI y ayuda a denotar el tamaño y la escala de la imagen.

Comentarios de Cabecera

Los siguientes comentarios de cabecera pueden incluirse opcionalmente entre las declaraciones BeginProlog y EndProlog en la cabecera, al final del resto de los comentarios de cabecera:

%AI3_ColorUsage: Black&White or Color
%AI3_TemplateBox: llx lly urx ury
%AI3_TemplateFile: vol::dir id:name
%AI3_TileBox: llx lly urx ury                 Específico de Mac

Sección de Organización de Script

La sección de Organización del Script del archivo consiste de información de configuración, una lista de definiciones de objetos, y los trailers de página y documento.

La porción de organización (setup) de esta sección tiene el siguiente formato:

%%BeginSetup
%%IncludeFont: font
   .
   .                           inicialización de conjunto de procedimientos
   .
   .
   .                           codificación de fuentes
   .
   .
   .                           definiciones de patrones
   .
%%EndSetup

La fuente especificada en la fuente IncludeFont es una usada en el documento y debería sustituirse por esta si la fuente correcta no está disponible a la aplicación de renderización. Los conjuntos de procedimientos definidos en el prólogo a menudo necesitan inicializarse y son desinicializados (o terminados) más adelante en el archivo. La codificación de fuente es el proceso de mapear códigos ASCII a glifos encontrados en el archivo de fuente. No intentaremos explicar la codificación de fuente aquí, y en su lugar te referiremos a las referencias PostScript al final de este artículo. Nota, sin embargo, que los operadores TE y TZ se usan para especificar codificaciones de fuente en esta sección del archivo.

Los patrones también son definidos en esta sección y están pensados para usarse una o más veces en el archivo. Las definiciones de patrones tienen la siguiente sintaxis:

%%BeginPattern: pattern-name llx lly urx ury layer-list E %%EndPattern

Los patrones son de hecho dibujos miniatura y pueden tener la complejidad completa de imágenes de tamaño completo de múltiples capas. Por esta razón te referimos a la especificación del formato para mayor información.

A continuación de la porción de configuración de la porción de Organización del Script está el cuerpo del script, que consiste de definiciones de objetos. Estas generalmente forman el grueso del archivo y a menudo pueden analizarse y renderizarse para dar una buena aproximación de la imagen, particularmente en archivos producidos por aplicaciones diferentes de Adobe Illustrator.

Antes de cada objeto hay una bandera, denotada por bandera A. Si A está activada, entonces el objeto se considera bloqueado (no editable) en Adobe Illustrator. Los objetos pueden ser uno o más de los siguientes:

path
path mask
composite
text
placed art
subscriber
graph
PostScript document

En la discusión siguiente, solo describimos objetos de ruta (path), objetos de arte colocados, objetos suscriptores (subscriber), y objetos de grafos (graph) en detalle. Por favor consulta el documento del formato AI y la especificación PostScript para mayor información sobre objetos compuestos y de texto. Nota que la terminología de grafos en particular solo tiene sentido con una copia de la documentación de la aplicación Adobe Illustrator a la mano.

Los objetos de ruta se definen especificando estilo de pintura, geometría de pintura, y renderizado de ruta.

Los estilos de pintura de ruta se especifican al establecer el estado actual de los gráficos. Nota que el estado gráfico puede guardarse temporalmente y restaurarse. Los argumentos más importantes de los argumentos de estado son los siguientes:

Argumento    Operador    Significado

array phase d Establece el patrón de guión (dash) usando array.
flatness i Aplanado de ruta Bezier (0-100)
 
flag D Orden de winding (0=sentido de reloj)
linecap J 0=butted, 1=redondo, 2=biselado
 
linejoin j 0=inglete, 1=redondo, 2=biselado
linewidth w Anchura de línea (mínimo 0)
miterlimit M Ajusta el inglete (>1)

La geometría de ruta se especifica usando la siguiente sintaxis:

Argumento    Operador    Significado

x y m moveto
x y l lineto
x y L lineto corner
x1 y1 x2 y2 x3 y3 c3 curveto—adjuntar Bezier a ruta
x1 y1 x2 y2 x3 y3 C curveto esquina
x2 y2 x3 y3 v Insertar Bezier comenzando con la posición actual
x2 y2 x3 y3 V Insertar Bezier en esquina
x1 y1 x3 y3 y Adjuntar Bezier a actual y terminar con x3,y3
x1 y1 x3 y3 Y Adjuntar Bezier a actual a esquina

Las rutas pueden renderizarse usando los siguientes operadores:

Argumento    Operador    Significado

NA N Deja una ruta sin cerrar, sin rellenar, sin trazo
NA n Deja una ruta cerrada, sin relleno, sin trazo
NA F Rellena una ruta, dejándola cerada
NA f Rellena una ruta, cerrándola
NA S Traza una ruta con los valores actuales por defecto
NA s Cierra la ruta y trazos con actuales valores por defecto
NA B Deja sin cerrar, pero rellena y traza la ruta
NA b Deja una ruta cerrada, rellenada, trazada

Los objetos de arte colocados son archivos EPS incluidos en un archivo AI. Estos pueden incluirse ya sea por referencia (a un archivo externo) o inline (dentro). Ambos tipos de archivos incluidos comienzan con el operador de comilla individual (') y terminan con un operador de "tilde" (~). Etre estos está el comentario %%IncludeFile: para referenciar archivos externos, o un par %%BeginDocument y %%EndDocument para archivos inline. Los argumentos:

   a b c d tx ty llx lly urx ury filename '

a, b, c, d, tx y ty son opcionales y especifican la matriz de transformación para que el archivo sea incluido. Los argumentos llx, lly, urx y urx especifican el cuadro delimitador del archivo incluido. El argumento filename es la ruta completa del archivo incluido.

Archivos externamente referenciados:

    a b c d tx ty llx lly urx ury filename '
    %%IncludeFile: filename

    -

Archivos inline:

    a b c d tx ty llx lly urx ury filename '
    %%BeginDocument: filename
    .
    .   contenidos del archivo incluido
    .
    %%EndDocument
    -

Los sistemas Macintosh pueden incluir referencias a objetos suscriptores, asociados con la característica publish y subscribe disponible en System 7. Estas son indicadas por el comentario %%subscriber:

    %AI3_Subscriber: res_number
    objeto de arte colocado

en donde res-number es el número de recurso del recurso SECT en el archivo, y el objeto de arte colocado es como se describe anteriormente.

Los objetos de grafo se usan para especificar grafos para propósitos de negocio, técnicos y científicos. Un número de comandos permite control total sobre ilustraciones etiquetadas, incluyendo la colocación y aparición de las siguientes partes (definidas por Adobe). Muchos detalles de estos comandos tienen sentido solo en el entorno de Adobe Illustrator:

axes
label group
axis tick
category axis group
edge
legend group
data column
series 0
series 1


Argumento    Operador    Significado

NA Gs Inicio de objeto de grafo
NA GS Fin de objeto de grafo
1 t r b Gb Delimitación de grafo (left,top,right,bottom)
(ver especificación) Gy Valores en cuadro de diálogo Graph Style
(ver especificación) Gd Valores en el cuadro de diálogo Graph Style
axis string Ga Eje: 1=parte baja, 2=izquierda, 3=derecha
(ver especificación) GA Especificaciones de eje
r c fr fc Gz Tabla de celda: filas, columnas, primer fila, primer columna
cv1,cv2...cvx Gc Lee valores de celda 1-x en la tabla
cw1, cw2...cwx num Gw Anchuras de columnas 1-x, num=número de columnas
NA GC Tabla de celda está completa
NA Gt Inicio de personalizaciones de grafo
NA GT Fin de personalizaciones de grafo
target cust Gx Destino, personalización (ver a continuación)
method G+ Cambiar método: 0=reiniciar a nuevo, 1=agregar nuevo a anterior
direction G1 0=enviar atrás, 1=enviar al frente
df ds fcs scs m Gf doFill, doStroke, fillStyle, strokeStyle, isAMask (ver a continuación)
column Gl Índice de columna para la tabla
row Gr Índice de fila para la tabla
axis Gi Qué objeto de eje está dentro: 1=parte baja, 2=izquierda, 4=derecha, 8=parte alta
(ver a continuación) Gm Personalizaciones de matriz
(ver a continuación) GD Personalizaciones de diseño de barra
repeat Ge Repetir diseño de barra
tickvalue Gv Valor numérico correspondiente a la marca de tick personalizada
NA GX Final de personalización
target col row axis Go Tipo de objeto de grafo que se acaba de leer (ver a continuación)

Las personalizaciones de grafo Gx contienen información sobre valores por defecto actuales. El parámetro de destino es uno de los siguientes:

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Gráfico entero
Todas las series y marcas de leyenda
Una serie y marcas de leyenda
Una serie pero sin leyenda
Una barra de datos, línea o cuña (wedge)
Todas las marcas de datos
Una serie y marcas de leyenda
Una serie pero ninguna marca de leyenda
Una marca de segmento d línea de datos
Un eje, completo
Línea principal de eje de categoría
Una marca de tick mayor de eje
Una marca de tick mayor individual de eje
Un conjunto de eje de tablas de tick
Una etiqueta de tick individual de eje
Todo el texto de leyenda
Un texto de leyenda
Un a línea principal de eje numérico
Un cuadro de leyenda o línea pero no marca
Una marca de leyenda
Todas etiquetas a lo largo de un eje de categoría
Una etiqueta de eje de categoría
Evento de sombra entero
Cada tick de un eje
Todos los ticks menores en un eje
Un tick menor en un eje

El argumento de personalización es uno de los siguientes:

0
1
2
3
Personalización de Illustrator
Establecer Estilo Gráfico de Series
Establecer Diseño de Columna (Barra)
Establecer Diseño de Marca

Las personalizaciones Gp pueden ser una de las siguientes:

0
1
9
11
Mover/Esquilar/Rotar/Escalar
Establecer Estilo de Pintado
Enviar al Frente/Atrás
Establecer Estilo de Layout

El operador Gf permita la configurazión de personalización de Set Paint Style (Establecer Estilo de Pintado). Los operadores doFill, doStroke, e isAMask son banderas. Los operadores fillStyle y strokeStyle pueden ser:

0
1
2
3
4
Negro (o blanco)
Proceso
Patrón
Color personalizado
Mezclar (AI para Windows v4.0)

El operador Gm especifica personalizaciones de matriz. Los argumentos están en la forma:

   a b c d h v generalGraphType reserved1 reserved2

en donde a, b, c, d, h y v son valores de matriz. El argumento generalGraphType especifica el tipo de grafo a al cual aplicar la personalización:

0
1
2
3
4
5
Columna agrupada y columna apilada
Dispersar (Scatter) y grafos de línea
Gráficos de pastel
Grafos de área
Todos los grafos

Los argumentos reserved1 y reserved2 están a 0.

El operador GD tiene la siguiente forma:

   designName designType repeatPartialType rotateLegend GD

en donde designName es un nombre (cadena) y designType puede ser:

6
7
8
9
Diseño verticalmente escalado
Diseño uniformemente escalado
Diseño repetitivo
Diseño corredizo

El argumento rotateLegend es una bandera que cuando se activa indica que la leyenda en el cuadro de diseño está rotado. El argumento repeatPartialType puede ser:

16
17
Cortar valores parciales
Escalar valores parciales

El argumento de destino que está asociado con el operador Go puede tener los siguientes valores:

1
2
4
5
6
8
9
10
15
20
22
Todas las series con leyendas
Otras series, incluyendo leyendas
Una barra de datos, línea o cuña (wedge)
Todas las marcas de datos
Una serie y sus marcas de leyenda
Marcas de segmento de una línea de datos
Un eje, incluyendo texto, ticks, línea
Línea principal de eje de categoría
Todo el texto de leyenda
Todas las etiquetas a lo large de un eje de categoría
Objetos de sombra entera


Trailer del Script

El Trailer del Script tiene la siguiente sintaxis:

   %%Trailer
      .
      .                                         terminación de conjunto de procedimientos
      .

La sección de terminación de conjunto de procedimientos consiste de una lista explícita de comandos de terminación de conjunto de procedimientos, en el orden inverso del especificado en la sección de organización del script. Un ejemplo de una terminación de conjunto de procedimiento es como se ve a continuación:

   Adobe_customcolor /terminate get exec



Para Mayor Información

Mucha de la información para este artículo provino del siguiente documento:

Adobe Illustrator File Format Specification, Adobe Developer Support Version 3.0 (Draft), 28 October 1992.

La especificación está incluida en el CD-ROM. Esta está descrita como un borrador aun cuando ha sido relativamente estable desde 1989.

También puedes contactar a Adobe a la siguiente dirección:

Adobe Systems
Developer Support
1585 Charleston Rd.
P.O. Box 7900
Mountain View CA 94039-7900
Voice: 415-961-4400
Voice: 800-344-8335
FAX: 415-961-3769

Adobe también ofrece una gran cantidad de información en línea, y debe ser felicitado por su disposición de ayudar a los desarrolladores:

   http://www.adobe.com/
   ftp://ftp.adobe.com/

La documentación de PostScript de Adobe está ampliamente disponible, y es requerido leerla para cualquiera que trabaje con archivos AI, y es un modelo de coherencia y lucidez; esta fue publicada en un conjunto de libros en conjunción con Addison-Wesley. Entre los libros está un tutorial sobre programación PostScript y la especificación de fuentes Tipo 1. Estas están disponibles en la mayoría de tiendas de computadora. El documento más importante para comprender el formato AI es:

PostScript Language Reference Manual, second edition, Addison-Wesley, Reading, MA. (ISBN 0-201-18127-4)

 n0HCo(-JT' &N5i5詗7c'wOưQ|c!@|%A"@[0d1̖Y'zb,5͔Ow( 2+FcI`Fqlzv(7LX rfYvNzzYOA#.E-94Zn!S 52@K9my;.}U݀r&jn2WWHJ`Q}u_tro {rWL;=_ؼ