¿Qué es el archivo AI? | Base de conocimientos
Introducción
Los archivos AI son creados y utilizados por la aplicación de diseño gráfico Adobe Illustrator. Están escritos en lenguaje PostScript; puede obtener más información en el artículo "¿Qué es el archivo PS?". Tenga en cuenta que la sintaxis del lenguaje PostScript emplea notación postfija basada en la gramática Backus‑Naur (BNF).
operand1...operandm operator |
Además, los archivos PS poseen al menos una estructura compuesta por las secciones Prolog y Script.
%!PS-Adobe-3.0 EPSF |
Prolog es la parte donde se definen los datos necesarios para el script posterior, el renderizado y la impresión. Allí pueden aparecer la versión del lenguaje PostScript, el cuadro delimitador, el creador, la fecha de creación y el título, así como las fuentes, variables globales y procedimientos. Los procedimientos se agrupan en procsets, diccionarios donde cada procedimiento está asociado a un nombre literal. En los archivos EPS, cuando una fuente u otro recurso no está definido en el Prolog, se anotan con los comentarios %%DocumentNeededFonts, %%DocumentNeededResources, %%DocumentNeededProcSets y %%DocumentNeededFiles. Script contiene la descripción de los gráficos de la página que utilizan los procedimientos, variables y fuentes definidos previamente. La estructura de los archivos PS/EPS está marcada por comentarios estructurales especiales, líneas que comienzan con %%.
¿Qué es el archivo AI?
En realidad, el archivo AI (Adobe Illustrator) es un archivo EPS, según la especificación de Adobe. Contiene dos comentarios obligatorios en los archivos EPS:
%!PS-Adobe-3.0 EPSF |
%%BoundingBox: ... |
Diferencias entre archivos AI y EPS
La principal diferencia radica en los operadores. Los operadores de Adobe Illustrator son secuencias de uno o dos símbolos, mientras que PS/EPS emplea palabras clave legibles por humanos, que normalmente constan de más de dos letras.
Adobe Illustrator utiliza más de 130 operadores de una o dos letras y sus definiciones no se almacenan en el Prolog del archivo AI, como ocurre en un archivo EPS; en su lugar, se guardan dentro de la propia aplicación Adobe Illustrator. Es muy probable que estos operadores se carguen en memoria al iniciar la aplicación.
Esta es la segunda diferencia principal entre los archivos EPS y AI.
Por lo tanto, los archivos AI pueden tratarse como EPS únicamente cuando se utilizan con Adobe Illustrator para crear, editar, visualizar o imprimir. Para los usuarios externos que no disponen de una licencia de Adobe Illustrator y, por tanto, no tienen acceso a los recursos del Prolog del archivo AI (definiciones de operadores, conjuntos de procedimientos, fuentes, etc.), el formato AI debe considerarse un formato de archivo nuevo e independiente.
Algunos operadores de AI son simplemente versiones abreviadas de operadores de PS, como se muestra a continuación.
Operador AI x y mx y l, x y Lx1 y1 x2 y2 x3 y3 c, x1 y1 x2 y2 x3 y3 Cnum wHXa | Operador PS nativo x y movetox y linetox1 y1 x2 y2 x3 y3 curvetonum setlinewidthclosepathred green blue setrgbcolor | Descripción inicia una nueva subtrayectoria de la ruta actualagrega un segmento de línea recta a la ruta actualagrega una sección de una curva Bézier cúbica a la ruta actualestablece el parámetro de ancho de línea en el estado gráficocierra la subtrayectoria actualestablece el espacio de color actual en el estado gráfico en DeviceRGB y el color actual en los valores de componente especificados por rojo, verde y azul |
Otros representan una versión más detallada de los operadores de PS.
Operador AI x2 y2 x3 y3 v, x2 y2 x3 y3 Vx1 y1 x3 y3 y, x1 y1 x3 y3 Yrojo verde azul Xarojo verde azul XAcian magenta amarillo negro kcian magenta amarillo negro KFfSs[ a b c d tx ty ] llx lly urx uryh w bits Tipo de imagen AlphaChannelCountreservado bin-ascii Máscara de imagen XI | Descripción agrega un segmento de curva de Bézier a la ruta actual entre el punto actual y el punto x3, y3, utilizando el punto actual y luego x2, y2 como puntos de dirección de Bézieragrega una curva de Bézier a la ruta actual entre el punto actual y el punto x3, y3 utilizando x1, y1 y x3, y3 como puntos de dirección de Béziersetrgbcolor para rellenosetrgbcolor para trazosetcmykcolor para rellenosetcmykcolor para trazorellena el área encerrada por el trazado actual con el color o patrón de relleno actual, dejándolo como un trazado abiertoel mismo trazado, pero cerradotraza el área encerrada por el trazado actual con el color o patrón de relleno actual, dejándolo como un trazado abiertoel mismo trazado, pero cerradodescribe una imagen rasterizada en Adobe Illustrator |
Hay operadores completamente nuevos, por ejemplo los que gestionan texto, degradados o capas.
Operador AI NnBb(ruta) modificada XGtipo ToTOalineación Taa b c d ty ty Tmty ty Tdnombre Ln[ a b c d tx ty ] llx lly urx uryh w bits ImageType AlphaChannelCountreserved bin-ascii ImageMask XF | Descripción ni rellenos ni trazos, dejándolo como un trazado abiertoel mismo, pero con un trazado cerradorellenos y trazos, dejándolo como un trazado abiertoel mismo, pero con un trazado cerradooperador de enlace de imagencomienza un objeto de texto. El argumento de tipo toma uno de los siguientes valores: 0 – texto de punto; 1 – texto de área; 2 – texto de rutafinaliza un objeto de texto y restaura la matriz de transformación actualestablece la alineación del texto tanto horizontal como verticalmenteestablece la matriz de texto para el texto a lo largo de una rutatraduce la matriz de texto mediante tx y ty al comienzo de la siguiente línea de textoestablece el nombre de la capadescribe una imagen rasterizada en Adobe Illustrator cuando los datos reales de la imagen no están incluidos en el archivo |
También es importante mencionar la agrupación de operadores. Estos se componen de operadores de inicio y fin, y pueden contener otros operadores entre ellos.
Operador AI *u ... *Uu ... Unombre tipo nColores Bd ... BDtopLeftCellIndex selectedIndex Pb ... PBMb ... MBvista previa visible habilitada impresiónatenuado hasMultiLayerMaskscolorIndex rojo verde azul Lb ... LB | Descripción comienzo de la ruta compuesta, fin de la ruta compuestacomienzo del grupo compuesto, fin del grupo compuestocomienzo de la definición del gradiente, fin de la definición del gradientecomienzo de la paleta, fin de la paletamáscara de inicio, máscara de findefinición de capa inicio, definición de capa fin |
Los pseudo‑comentarios son otra diferencia relevante. Mientras que el intérprete PostScript ignora los comentarios que comienzan con % o %%, Adobe Illustrator introduce comentarios “pseudo” que empiezan con %_. Estos son utilizados por Illustrator para almacenar información adicional, como paradas de degradado o datos de formulario revisable.
Operador AI colorSpec colorStyle midPoint rampPoint %_BsrampSpec rampType %_Br%_Gs%_ | Descripción descripción de la parada de color del degradadodescripción de la rampa de degradadoabre la sección de gráficoshace que el intérprete de PS ignore otros operadores peculiares de Adobe Illustrator |
La última diferencia entre los archivos AI y EPS es el Formulario revisable. Adobe separa el formulario revisable del formulario final de un documento. El formulario final contiene únicamente la información necesaria para visualizar o imprimir las páginas. El formulario revisable incluye datos adicionales que permiten editar el documento en la aplicación, pero no son necesarios para la impresión. Algunos operadores de AI existen solo para el formulario revisable, sobre todo los que gestionan texto.
¿Para qué se utiliza el archivo AI?
El archivo AI se utiliza para editar, transferir y almacenar gráficos creados con la aplicación Adobe Illustrator.
¿Cómo abro un archivo AI?
Los archivos AI pueden abrirse y visualizarse con la aplicación Adobe Illustrator. También puede utilizar el AI Viewer de Aspose para abrir su documento. Es una aplicación multiplataforma que no requiere instalación.
¿Es lo mismo PDF que archivo AI?
No, son formatos diferentes. Aunque los archivos PDF y AI comparten el mismo modelo interno de descripción de página, PDF es un lenguaje de descripción de página estático, mientras que AI es un subconjunto del lenguaje de descripción de página dinámico PostScript.