Бесплатные скрипты для Adobe Illustrator

Сергей Осокин
Дизайн-кабак
9 min readDec 25, 2018

--

Собрал в единую подборку свои скрипты или в написании которых принимал участие. Большинство из них автоматизирует различные операции с объектами. Все скрипты бесплатны для скачивания.

Новость: все мои новые скрипты и обновления публикуются в Телеграм-канале t.me/aiscripts и на сайте ais.sergosokin.ru. Эта статья больше не обновляется.

Скриптов под Иллюстратор в мире написано тысячи и многие доступны бесплатно. Если среди моих авторских нужного под задачу нет, то пишите на почту или в Телеграм. Может подскажу, где найти подходящий.

Установка скриптов

Файл скачанного скрипта копируем в стандартную папку Иллюстратора.

Путь для Мак: /Applications/Adobe Illustrator [версия]/Presets.localized/en_GB/Scripts

Папка в Виндовс: C:\Program Files\Adobe\Adobe Illustrator [версия]\Presets\en_GB\Scripts\

После перезапуска Иллюстратора установленные скрипты станут доступны в меню File → Scripts.

Запустить скрипт без установки можно и сразу, выбрав меню File → Scripts → Other Script, тогда Иллюстратор попросит указать расположение файла. Или перетащите мышкой файл скрипта на панель с вкладками открытых документов Иллюстратора, но не окно документа, иначе скрипт может сработать с ошибками.

Если часто приходится запускать скрипты, то чтобы не открывать постоянно меню, можно установить бесплатное расширение Scripshon Trees. Это панель, выводящая список всех скриптов из указанной папки, при желании в ней настраивается вызов скрипта по горячей клавише.

ArtboardsRotateWithObjects 1.2

Скрипт для поворота монтажной области (artboard) вместе с содержимым. В Фотошопе присутствует стандартный функционал для поворота изображения Image → Image Rotation, но аналога до сих пор нет в Иллюстраторе. Данный скрипт повернёт по желанию артборды в документе с их содержимым на 90 градусов. Автор — Александр Ладыгин, в ходе совместного тестирования мной был дописан интерфейс скрипта.

  • Active Artboard — вращать текущий артборд;
  • All Artboards — повернуть все артборды в документе;
  • 90 CW — по часовой стрелке;
  • 90 CCW — против часовой стрелки.
ArtboardsRotateWithObjects.jsx demo

ConvertToGradient

Скрипт создает градиент из сплошной заливки с указанным числовым смещением каналов для создания цвета крайних точек градиента и углом поворота. Первую версию скрипта написал в 2010 году Саурабх Шарма. Я добавил ряд улучшений:

  • поддержку RGB, CMYK профилей;
  • возможность создать градиент, если объект залит плашечным цветом (Spot) или в градации серого (Gray colors);
  • применение градиента к Compound Path и объектам в группах.
ConvertToGradient.jsx demo

DuplicateArtboards

В Иллюстраторе, чтобы продублировать артборды, нужно выбирать инструмент Artboard Tool и с зажатым Alt несколько раз перетаскивать неизвестно на какое расстояние и считать в уме сколько копий уже сделано. Либо в панели Artboards выбирать артборды и тащить на иконку New Artboard также несколько раз, но получаем все копии в одну строку.

Новому скрипту достаточно указать нужное количество копий и расстояние между ними. На Гитхабе бесплатная Light версия с 2 опциями, если нужно больше возможностей, то покупайте Pro версию на Gumroad. Настройки в Pro версии:

  • Select artboard — список всех артбордов документа;
  • Copies — количество копий выбранного артборда;
  • Columns — количество колонок, включая стартовый артборд. Если ряд заполнился, то следующие копии начнутся с новой строки;
  • Spacing — отступы между копиями;
  • Artboard name — имя копий с набором шаблонов;
  • Insert as last in Artboards list — поместит все копии в конец списка артбордов документа. Иначе копии будут располагаться после оригинала;
  • Copy Artwork with Artboard — копирует артборд со всей графикой на нем, включая заблокированные и скрытые объекты.

Export selection as AI

Скрипт экспортирует все выделенные объекты в документе в .ai файл. Если объектов много и они сохраняются в отдельные файлы, то индикатор прогресса подскажет на какой стадии процесс.

  • Save each object to a separate file — экспортировать каждый объект или группу в отдельный файл;
  • Fit artboard to selected art — масштабировать артборд под размер объекта.
Export-selection-as-AI.jsx demo

ExtUngroup 1.1

Скрипт помогает разгруппировать до отдельных объектов любые многоуровневые группы в документе и заодно удалить все обтравочные маски (Clipping Mask) с объектов.

  • Selected objects — скрипт будет работать только с выделенными объектами;
  • Active layer — разгруппировать только на активном слое;
  • Artboard No. — активный артборд с указанием его номера;
  • All Document — искать группы по всему документу;
  • Ungroup All — разгруппировать всё;
  • Release Clipping Masks — разделить все маски;
  • Remove Masks Shapes — удалить пустые объекты, которые были масками.
ExtUngroup.jsx demo

FileVersionInformer

Скрипт помогает собрать техническую информацию, в какой версии Иллюстратора сохранены все файлы .Ai, .Eps в указанной папке. Он создает текстовый документ с перечнем имён файлов и номерами версий. Каких-то способов без скрипта узнать эту информацию не найдено. Adobe Bridge показывает различные метаданные файла, но информация о версии им не определяется. Владельцам Маков повезло чуть больше пользователей Виндовс, Finder на Маке может отобразить для одного выбранного векторного файла версию программы.

FileVersionInformer.jsx demo

InlineSVGToAI

С помощью скрипта вставляем SVG код из буфера обмена в виде графики. Например, копируем объект через контекстное меню «Copy as svg» из Фигмы и с помощью скрипта вставляем в Иллюстратор. Cкрипт написан Александром Ладыгиным с небольшим моим вкладом по рефакторингу кода. Если у вас Иллюстратор CC 2018 22.1 или 2019, то скрипт не нужен, так как в них эта функция встроена.

InlineSVGToAI.jsx demo

Points Move Random

Скрипт перемещает случайным образом в пределах заданных диапазонов по горизонтали и вертикали выделенные точки или все точки на выделенных объектах. С опцией «Move only points handles» переместятся усы точек, а сами точки останутся на своих координатах. С помощью скрипта можно быстро генерировать абстрактные паттерны, кляксы из кругов, траву, мех.

RenameItems

Скрипт для массового переименования выделенных объектов, групп. Особо полезен для подготовки файлов для анимации в Афтер Эффектс или анимации SVG, т.к. в коде появляются понятные ID у элементов, на которые можно ссылаться. Если в документе ничего не выделено, то скрипт предложит переименовать активный слой.

  • Find and replace — позволяет найти совпадающие символы в именах выделенных объектов и заменить. Этой опцией можно также убирать пробелы;
  • Search string — поле для ввода искомых символов;
  • Auto-increment naming — добавить в конце имени автонумерацию;
  • Name separator — символ, которым будет отделен номер;
  • Start counting at — поле устанавливает с какого числа начать нумерацию.
RenameItems.jsx demo

Rescale

Скрипт трансформирует выбранный объект или группу до нужного размера. В зависимости от введенной ширины или высоты и конечного размера коэффициент рассчитывается автоматически. Если лень смотреть текущий размер, то можно поверх нарисовать прямую линию, тогда скрипт возьмет за основу ее длину, а в конце, по желанию, удалит. Пример использования: имеем развертку упаковки от типографии, с указанными размерами сторон, но развертка в неизвестном масштабе в файле. Зная конечные размеры, мы можем скриптом привести развертку к 100% масштабу.

Rescale.jsx demo

ResizeToSize

В Иллюстраторе существует встроенная панель Transform, но с её помощью нельзя трансформировать несколько выделенных объектов до заданной величины. Также у неё проблемы с точностью результата, из-за наличия эффектов и обводок могут появляться дробные значения. Скрипт ResizeToSize может трансформировать с 100% точностью несколько объектов, учитывая размер стороны: ширины, высоты или автоматически самой длинной стороны. Удобно когда, например, группу иконок нужно точно вписать в заданный артборд. Единицы измерения берутся из настроек документа.

  • Visible bounds будет считать размер объекта вместе с обводкой и эффектами, Geometric bounds — только габариты самой фигуры;
  • Scaling side — выбор стороны;
  • Reference point — точка, от которой произойдет масштабирование;
  • Additional scale — дополнительные настройки, например, если отключен Uniform, то каждый объект будет сжат по одной стороне.

SelectOnlyPoints

Ситуация: когда мы пытаемся выделить и сдвинуть конкретные точки на объектах с помощью Direct Selection Tool или Lasso tool, часто кроме точек выделяются и сегменты путей. Начинаем двигать и ломается фигура. Приходится заново ювелирно выделять точки. С помощью SelectOnlyPoints мучиться не придется, выделяем область с интересующими нас точками, запускаем скрипт и всё поправлено — остаются активными только точки, попавшие в область выделения.

SelectOnlyPoints.jsx demo

SelectPointsByType

В Иллюстраторе официально существует два типа точек: Corner (угловая) и Smooth (гладкая). Как быстро выделить точки одного типа? Никак. Визуально из-за положения усов точки (handles) на кривой Безье можно ввести больше типов. Скрипт позволяет быстро выделять 5 видов точек для дальнейших манипуляций. Поддерживается множественный выбор. Чтобы видеть какие точки выделяются, отключите рамку View → Hide Bounding Box.

  • Bezier — гладкие точки, у которых по 2 уса, двигающихся синхронно;
  • Flush — точки, у которых только 1 ус, лежащий вдоль прямого сегмента. Появляются, например, на стыках скруглений;
  • Corner — угловые точки без усов, либо с 1 усом, либо с 2 усами под углом, меньше указанного в поле Angle Tolerance — 0…180;
  • Broken — псевдогладкие точки с 2 усами, которые двигаются по отдельности и могут образовывать угол, не больше указанного в Angle Tolerance;
  • Flat — точки без усов, делящие прямые линии на сегменты. Если их убрать, форма линии не изменится.

SplitPath

Во всех версиях Иллюстратора панель Pathfinder работает так: мы можем комбинировать замкнутые объекты различными способами или разрезать объекты с помощью линий. Но до сих пор Адоб не добавила в панель способ разрезать наоборот линии с помощью некой замкнутой фигуры. Скрипт SplitPath сделает это, к тому же можно как вырезать из линии или набора линий лежащую поверх фигуру с помощью метода Minus Front, так и наоборот удалить все куски линий, лежащих за пределами фигуры, методом Intersect.

StrokeColorFromFill

Красит обводку (Stroke) каждого выделенного объекта в цвет его заливки. У объектов с градиентной заливкой обводка красится в усреднённый цвет всего градиента методом интерполяции.

  • Color shift — сдвигает все цветовые каналы при переносе с объекта на обводку. При нуле цвет переносится без изменения;
  • Convert Spot colors — конвертирует плашечный цвет (в палитре такие цвета отмечены белым уголком) в RGB/CMYK;
  • If there is no stroke, add it — если у объекта нет обводки, то добавит толщиной 1 pt. Опция недоступна на Маках с Иллюстратором старше CC 2020.
StrokeColorFromFill.jsx demo

TrimMasks

При открытии файла в разных версиях Иллюстратора или переносе из других форматов можно столкнуться с тем, что цветной объект на самом деле это цветной прямоугольник внутри обтравочной маски. Скрипт обрежет вложение по форме маски и мы получим цельный элемент, с которым можно дальше работать. Скрипт работает либо со всеми объектами в документе, либо с выделенными.

Если маска покрашена в какой-либо цвет и надо после обрезки её оставить, как объект, то откройте файл скрипта текстовым редактором и замените значение false в строке «SAVE_FILLED_CLIPMASK = false;» на true.

Zoom And Center

Данный скрипт максимально увеличивает выделенные в Adobe Illustrator объекты по центру экрана. Схож по работе со встроенным зумом в Corel Draw. За основу я взял наработку Джона Вундеса. Если ничего не выделено, скрипт используется для максимального масштабирования на экране всего содержимого файла. Это пригодится, чтобы увидеть общую структуру документа или найти пропущенные объекты, которые случайно могли сдвинуть далеко от рабочих артбордов.

  • Visible unlocked — максимально показать на экране видимые незаблокированные объекты;
  • All except hidden — отобразить всё, кроме скрытых объектов;
  • All in document — отмасштабировать экран с учетом всех объектов в документе. Учтите, что данная опция может замедлить выполнения скрипта на файлах с тысячами объектов.
Zoom-and-center.jsx demo

Если не скачивается, то вот прямая ссылка на Гитхаб.

В дополнение на Гитхабе доступна ещё одна моя подборка разных небольших скриптов.

Донаты

Вы можете поддержать меня и разработку бесплатных скриптов

Где меня найти: Telegram / Facebook / Behance

--

--

Сергей Осокин
Дизайн-кабак

Пишу, когда не лень, о практичных вещах. Иллюстратор в Модульбанке.