Формат файла AI - что это такое и как его открыть

Введение

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

operand1...operandm operator

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

%!PS-Adobe-3.0 EPSF
<header comments>
%%EndComments
%%BeginProlog

234 {<proc set>}    (не обязательно, но обычно присутствует)
%%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 используют удобочитаемые ключевые слова, обычно содержащие более двух букв.

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

И это второе основное различие между файлами 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
красный зеленый синий setrgbcolor

Description

начинает новый подпуть текущего пути
добавляет прямой отрезок к текущему пути
добавляет участок кубической кривой Безье к текущему пути
устанавливает параметр ширины линии в графическом состоянии
закрывает текущий подпуть
устанавливает текущее цветовое пространство в графическом состоянии на DeviceRGB и текущий цвет на значения компонентов, заданных красным, зеленым и синим

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

AI operator

x2 y2 x3 y3 v, x2 y2 x3 y3 V
x1 y1 x3 y3 y, x1 y1 x3 y3 Y
красный зеленый синий Xa
красный зеленый синий XA
голубой пурпурный желтый черный k
голубой пурпурный желтый черный 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

Добавляет сегмент кривой Безье к текущему пути между текущей точкой и точкой x3, y3, используя текущую точку, а затем x2, y2 в качестве точек направления кривой Безье.
Добавляет кривую Безье к текущему пути между текущей точкой и точкой x3, y3, используя x1, y1 и x3, y3 в качестве точек направления кривой Безье.
setrgbcolor для заливки
setrgbcolor для обводки
setcmykcolor для заливки
setcmykcolor для обводки
Заполняет область, заключенную в текущий контур, текущим цветом или узором заливки, оставляя ее в виде открытого контура.
Тот же, но близкий контур.
Обводит область, заключенную в текущий контур, текущим цветом или узором заливки, оставляя ее в виде открытого контура.
Тот же, но близкий контур.
Описывает растровое изображение в Adobe Illustrator.

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

AI operator

N
n
B
b
(путь) изменен< XG
тип в
TO
выравнивание 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

не заполняет и не обводит контур, оставляя его открытым
тот же, но закрытый контур
заполняет и обводит контур, оставляя его открытым
тот же, но закрытый контур
оператор ссылки на изображение
начинает текстовый объект. Аргумент type принимает одно из следующих значений: 0 ± текст в точке; 1 ± текст в области; 2 ± текст по контуру
завершает текстовый объект и восстанавливает текущую матрицу преобразования
устанавливает выравнивание текста по горизонтали и вертикали
устанавливает текстовую матрицу для текста вдоль контура
перемещает текстовую матрицу на tx и ty в начало следующей строки текста
устанавливает имя слоя
описывает растровое изображение в Adobe Illustrator, если фактические данные изображения не включены в файл

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

AI operator

*u ... *U
u ... U
имя тип nЦвета Bd ... BD
topLeftCellIndex selectedIndex Pb ... PB
Mb ... MB
видимый предварительный просмотр включен печать
затемненный имеет многослойные маски
colorIndex красный зеленый синий
Lb ... LB

Description

начало составного пути, конец составного пути
начало составной группы, конец составной группы
начало определения градиента, конец определения градиента
начало палитры, конец палитры
начало маски, конец маски
начало определения слоя, конец определения слоя

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

AI operator

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

Description

Описание цветовой точки градиента
Описание градиентной шкалы
Открывает раздел графика
Сделать некоторые другие специфические для Adobe Illustrator операторы игнорируемыми интерпретатором Photoshop

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

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

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

Чем открыть файл AI без иллюстратора?

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

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

PDF — это то же самое, что AI‑файл?

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