Формат файла 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 |
%%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 mx y l, x y Lx1 y1 x2 y2 x3 y3 c, x1 y1 x2 y2 x3 y3 Cnum wHXa | Native PS operator x y movetox y linetox1 y1 x2 y2 x3 y3 curvetonum setlinewidthclosepathкрасный зеленый синий setrgbcolor | Description начинает новый подпуть текущего путидобавляет прямой отрезок к текущему путидобавляет участок кубической кривой Безье к текущему путиустанавливает параметр ширины линии в графическом состояниизакрывает текущий подпутьустанавливает текущее цветовое пространство в графическом состоянии на DeviceRGB и текущий цвет на значения компонентов, заданных красным, зеленым и синим |
Другие представляют собой более подробную форму операторов PS.
AI operator x2 y2 x3 y3 v, x2 y2 x3 y3 Vx1 y1 x3 y3 y, x1 y1 x3 y3 Yкрасный зеленый синий Xaкрасный зеленый синий XAголубой пурпурный желтый черный kголубой пурпурный желтый черный KFfSs[ a b c d tx ty ] llx lly urx uryh w bits ImageType AlphaChannelCountreserved bin-ascii ImageMask XI | Description Добавляет сегмент кривой Безье к текущему пути между текущей точкой и точкой x3, y3, используя текущую точку, а затем x2, y2 в качестве точек направления кривой Безье.Добавляет кривую Безье к текущему пути между текущей точкой и точкой x3, y3, используя x1, y1 и x3, y3 в качестве точек направления кривой Безье.setrgbcolor для заливкиsetrgbcolor для обводкиsetcmykcolor для заливкиsetcmykcolor для обводкиЗаполняет область, заключенную в текущий контур, текущим цветом или узором заливки, оставляя ее в виде открытого контура.Тот же, но близкий контур.Обводит область, заключенную в текущий контур, текущим цветом или узором заливки, оставляя ее в виде открытого контура.Тот же, но близкий контур.Описывает растровое изображение в Adobe Illustrator. |
И есть совершенно новые операторы, например те, которые работают с текстом, градиентами или слоями.
AI operator NnBb(путь) изменен< XGтип вTOвыравнивание Taa b c d ty ty Tmty ty Tdname Ln[ a b c d tx ty ] llx lly urx uryh w bits ImageType AlphaChannelCountreserved bin-ascii ImageMask XF | Description не заполняет и не обводит контур, оставляя его открытымтот же, но закрытый контурзаполняет и обводит контур, оставляя его открытымтот же, но закрытый контуроператор ссылки на изображениеначинает текстовый объект. Аргумент type принимает одно из следующих значений: 0 ± текст в точке; 1 ± текст в области; 2 ± текст по контурузавершает текстовый объект и восстанавливает текущую матрицу преобразованияустанавливает выравнивание текста по горизонтали и вертикалиустанавливает текстовую матрицу для текста вдоль контураперемещает текстовую матрицу на tx и ty в начало следующей строки текстаустанавливает имя слояописывает растровое изображение в Adobe Illustrator, если фактические данные изображения не включены в файл |
Стоит особо отметить операторы группировки. Они состоят из начального и конечного операторов, а между ними находятся другие операторы.
AI operator *u ... *Uu ... Uимя тип nЦвета Bd ... BDtopLeftCellIndex selectedIndex Pb ... PBMb ... MBвидимый предварительный просмотр включен печатьзатемненный имеет многослойные маскиcolorIndex красный зеленый синий Lb ... LB | Description начало составного пути, конец составного путиначало составной группы, конец составной группыначало определения градиента, конец определения градиентаначало палитры, конец палитрыначало маски, конец маскиначало определения слоя, конец определения слоя |
Третье отличие — псевдокомментарии. Как мы уже знаем, интерпретатор PostScript различает стандартные комментарии, строки, начинающиеся с «%», и структурные комментарии, начинающиеся с «%%». Adobe Illustrator добавляет дополнительные, так называемые, «псевдо» комментарии, которые начинаются с «%_». Эти комментарии на самом деле являются совершенно новыми, свойственными Adobe Illustrator операторами. Они реализованы в виде комментариев и игнорируются интерпретатором PostScript, но используются Adobe Illustrator и другими приложениями, которые читают и анализируют файлы AI. Ниже приведен пример таких комментариев-операторов.
AI operator colorSpec colorStyle midPoint rampPoint %_BsrampSpec 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.