Что такое AI-файл? | База знаний

Введение

Файлы AI — это файлы, созданные и используемые графическим редактором Adobe Illustrator. Они написаны на языке PostScript, о котором вы можете прочитать в статье “Что такое PS-файл?”. Напомним, что синтаксис языка PostScript имеет постфиксную запись в форме Бэкуса-Наура (BNF).

operand1...operandm operator

Также, как вы помните, файлы PS как минимум имеют структуру, состоящую из частей Prolog и Script.

%!PS-Adobe-3.0 EPSF
<header comments>
%%EndComments
%%BeginProlog
{<proc set>}    (not required, but is normally present)
%%EndProlog
<setup>
{<layer>}|{<object>}
{<page trailer>}
<document trailer>
%%EOF

Пролог — это часть, в которой определяются необходимые данные для последующего скрипта, рендеринга и печати. Эти данные могут включать версию языка Postscript, ограничивающую рамку, создателя, дату создания и заголовок. Здесь также следует определить необходимые шрифты, глобальные переменные и процедуры. Процедуры объединены в procsets, словари, где каждая процедура связана с буквальным именем. И каждый процесс также имеет имя. В случае файла EPS, когда необходимый шрифт или другой ресурс не определен в Прологе, это следует как минимум отметить соответствующими комментариями %%DocumentNeededFonts, %%DocumentNeededResources,%%DocumentNeededProcSets, %%DocumentNeededFiles. Скрипт содержит описания графики страниц, в которых используются процедуры, глобальные переменные и шрифты, определенные ранее в Прологе. Структура файлов PS/EPS обозначается специальными структурными комментариями — строками, начинающимися с %%.

Что такое AI-файл?

Файл AI или сокращенный файл Adobe Illustrator на самом деле является файлом EPS, как это заявлено Adobe в спецификации AI. Он содержит два комментария, которые необходимы в файлах EPS:

%!PS-Adobe-3.0 EPSF

and

%%BoundingBox: ...

Различия между файлами AI и EPS.

Основное отличие — операторы. Операторы Adobe Illustrator представляют собой последовательности из одного или двух символов, тогда как PS/EPS используют удобочитаемые ключевые слова, которые обычно содержат более 2 букв.

Adobe Illustrator использует более 130 таких 1-2-буквенных операторов, и их определения не хранятся в Прологе AI-файла, как это было бы в случае с файлом EPS, а хранятся где-то в Adobe. Приложение иллюстратор. Скорее всего они загружаются в память при запуске приложения. И это второе основное различие между файлами EPS и AI.

Таким образом, файлы AI можно рассматривать как файлы EPS только в том случае, если для их создания, редактирования, просмотра и печати используется Adobe Illustrator. Для внешних потребителей, у которых нет доступа к лицензионным материалам Adobe Illustrator, не включенным в Пролог файла AI, то есть определениям операторов AI, наборам процедур, шрифтам и т. д., Формат AI следует рассматривать как отдельный совершенно новый формат файлов.

Некоторые операторы AI представляют собой сокращенные формы операторов PS, как показано ниже.

AI operator

x y m
x y l, x y L
x1 y1 x2 y2 x3 y3 c, x1 y1 x2 y2 x3 y3 C
num w
H
Xa

Native PS operator

x y moveto
x y lineto
x1 y1 x2 y2 x3 y3 curveto
num setlinewidth
closepath
red green blue setrgbcolor

Description

starts a new subpath of the current path
appends a straight line segment to the current path
appends a section of a cubic Bezier curve to the current path
sets the line width parameter in the graphics state
closes the current subpath
sets the current color space in the graphics state to DeviceRGB and the current color to the component values specified by red, green, and blue

Другие представляют собой более подробную форму операторов PS.

AI operator

x2 y2 x3 y3 v, x2 y2 x3 y3 V
x1 y1 x3 y3 y, x1 y1 x3 y3 Y
red green blue Xa
red green blue XA
cyan magenta yellow black k
cyan magenta yellow black K
F
f
S
s
[ a b c d tx ty ] llx lly urx ury
h w bits ImageType AlphaChannelCount
reserved bin-ascii ImageMask
XI

Description

adds a Bezier curve segment to the current path between the current point and the point x3, y3, using the current point and then x2, y2 as the Bezier direction points
appends a Bezier curve to the current path between the current point and the point x3, y3 using x1, y1 and x3, y3 as the Bezier direction points
setrgbcolor for fill
setrgbcolor for stroke
setcmykcolor for fill
setcmykcolor for stroke
fills the area enclosed by the current path with the current filling color or pattern, leaving it as an open path
the same, but close path
strokes the area enclosed by the current path with the current filling color or pattern, leaving it as an open path
the same, but close path
describes a raster image in Adobe Illustrator

И есть совершенно новые операторы, например те, которые работают с текстом, градиентами или слоями.

AI operator

N
n
B
b
(path) modified XG
type To
TO
alignment Ta
a b c d ty ty Tm
ty ty Td
name Ln
[ a b c d tx ty ] llx lly urx ury
h w bits ImageType AlphaChannelCount
reserved bin-ascii ImageMask
XF

Description

neither fills nor strokes, leaving it as an open path
the same, but close path
fills and strokes, leaving it as an open path
the same, but close path
image link operator
begins a text object. The type argument take on one of the following values: 0 − point text; 1 − area text; 2 − path text
ends a text object and restores the current transformation matrix
sets text alignment both horizontally and vertically
sets the text matrix for text along a path
translates the text matrix by tx and ty to the beginning of the next line of text
sets layer name
describes a raster image in Adobe Illustrator when the actual image data is not included in the file

Стоит особо отметить операторы группировки. Они состоят из начального и конечного операторов, а между ними находятся другие операторы.

AI operator

*u ... *U
u ... U
name type nColors Bd ... BD
topLeftCellIndex selectedIndex Pb ... PB
Mb ... MB
visible preview enabled printing
dimmed hasMultiLayerMasks
colorIndex red green blue
Lb ... LB

Description

begin compound path, end compound path
begin compound group, end compound group
begin gradient definition, end gradient definition
begin palette, end palette
begin mask, end mask
begin layer definition, end layer definition

Третье отличие — псевдокомментарии. Как мы уже знаем, интерпретатор PostScript различает стандартные комментарии, строки, начинающиеся с «%», и структурные комментарии, начинающиеся с «%%». Adobe Illustrator добавляет дополнительные, так называемые, «псевдо» комментарии, которые начинаются с «%_». Эти комментарии на самом деле являются совершенно новыми, свойственными Adobe Illustrator операторами. Они реализованы в виде комментариев и игнорируются интерпретатором PostScript, но используются Adobe Illustrator и другими приложениями, которые читают и анализируют файлы AI. Ниже приведен пример таких комментариев-операторов.

AI operator

colorSpec colorStyle midPoint rampPoint %_Bs
rampSpec rampType %_Br
%_Gs
%_

Description

gradient color stop description
description of the gradient ramp
opens the graph section
make some other peculiar to Adobe Illustrator operators ignorable by PS interpreter

Последнее различие между файлами AI и EPS — это пересматриваемая форма. Adobe разделяет Пересматриваемую форму и Окончательную форму документа. Окончательная форма содержит только информацию, необходимую для просмотра или печати страниц. Пересматриваемая форма содержит другие элементы, которые можно использовать для редактирования документов в приложении, но которые не нужны для печати. Некоторые операторы AI существуют только для Revisable Form. Особенно много этих операторов используется при работе с текстом. Все псевдокомментарии используются для пересматриваемой формы. Файлы EPS, напротив, представляют собой документы в окончательной форме.

Для чего используется AI-файл?

Файл AI используется для редактирования, передачи и хранения графики приложения Adobe Illustrator.

Как открыть файл AI?

Файлы AI можно открывать и просматривать с помощью автономного приложения Adobe Illustrator.

Вы также можете использовать AI Viewer из ​​Aspose, чтобы открыть свой документ. Это кроссплатформенное приложение, не требующее установки.

PDF — это то же самое, что AI File?

Нет, это разные форматы и языки. Хотя файлы PDF и AI имеют одну и ту же внутреннюю модель описания страниц, PDF — это статический язык описания страниц, а AI — подмножество PostScript, динамического языка описания страниц.

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.