Переменные данные в Adobe Illustrator
Работа многих дизайнеров однообразна. Адаптировать листовку от звездного дизайнера под контактные данные филиалов компании, вставить кучу фотографий в шаблон визитки, экспортировать пригодные для печати графики с отчетностью за день. Все это требует много времени, сил, и не приносит никакого удовольствия. Обычно дизайнеры предпочитают творить, нежели заниматься вырезкой/вставкой контента. К счастью, Illustrator позволяет динамически изменять объекты в макете и экономить нам кучу времени, как и inDesign. Давайте изучим эту не очень популярную функцию.
Во первых, вам нужно разработать дизайн-шаблон, состоящий из связанных (linked) изображений, текста, графиков или прочих объектов. Каждый из этих объектов вы также сможете скрыть/показать при работе с переменными данными в Illustrator.
Динамические данные в Illustrator
Теперь назначим переменные. Выберите объект, который Вы хотите сделать динамическим, откройте панель Variables. Нажмите кнопку Make Object Dynamic для создания cвязанной переменной (Linked File variable) или кнопку Make Visibility Dynamic в палитре Variables. Как вы понимаете, если вы используете текстовую строковую переменную, то и меняться будет текст в текстовом объекте.
Переменные определяют признаки динамических объектов и могут быть следующих типов:
- Graph Data (Данные для графика) — позволяют создавать графики;
- Linked File (Связанный файл) — предназначены для создания динамических изображений, которые связаны с файлами картинок или других прилинкованных документов. Обязательно через File=>Place;
- Text String (Текст) — создание динамического текста;
- Visibility (Видимый) — видимость объекта или группы объектов. В XML файле она будет меняться параметрами true/false.
- Тип не задан — вы зададите тип в дальнейшем. Тип объекта в любом случае будет присвоен.
Когда вы создаете переменные, желательно их переименовывать. Переменная 1 — ужасное название, а вот name_person уже выглядит куда понятнее. Вы можете назначить на объект две переменные, если одна из этих переменных Visibility.
Нажмите кнопку Capture data set в палитре Variables, чтобы зафиксировать данные переменных, отображенных на холсте. И затем выберите Save Variable Library из меню палитры Variables. Получаем XML-шаблон, который клиент должен заполнить.
Создание динамического текста в Illustrator
А теперь представим, что мы находимся на стороне клиента, и заполнять все это безобразие придется нам же. Можно пойти к программисту, показать созданный XMLник, рассказать что к чему. Программист привяжет переменные и наборы данных к имеющейся базе данных, и экспортирует все в подходящем виде. Вы вернетесь в панель Variables, выберите Load Variable Library, и загрузите отредактированную библиотеку переменных. Но, к сожалению, этот вариант получения XML редко удается осуществить. В большинстве случаев заполнять данные в нужном формате вы будете собственноручно.
Уверен, вам отдадут простой файл формата Excel/CSV, со словами, что менеджеры слишком заняты и не собираются решать проблемы дизайнеров. Многие ушлые умы сразу прикинут, что в этом случае можно по старинке использовать XML, экспортированный из FileMaker Pro. Этот способ работает в InDesign, но не в Illustrator. Придется поработать ручками в Excel. В Excel важно обратить внимание, что названия первой строки это названия переменных для Illustrator’а. Сохраняем файл в формате ods, csv, либо xls. Далее нам нужно конвертировать полученный файл в XML, так как Illustrator не умеет обрабатывать ничего другого. Идем на онлайн-сервис (которых много), и методом копипаста создаем себе XML файл.
Загнать данные в Illustrator можно и с помощью этого замечательного скрипта. Скрипт мне представляется наиболее хорошим способом перегнать данные, ведь он позволяет сохранить XML из CSV / TXT, работает со всеми типами данных, в том числе true/false для видимости объекта.
В итоге, каким бы способом для генерации XML мы не действовали, нужно загрузить полученный XML обратно в программу. И если все сделано правильно, в окне variables станут активны стрелочки для переключения между подгруженными данными.
Теперь нам придется воспользоваться пакетной обработкой (batch). Для начала имена объектов должны соответствовать соглашениям об именовании XML, так что проследуйте в настройки и поставьте вот такую полезную галочку.
Щелкая кнопку Next data set в палитре Variables, убедитесь, что все данные легли в шаблон красиво и аккуратно. Мы будем использовать пакетную обработку, чтобы сохранить каждую визитную карточку. Но сначала, мы должны создать действие (action), которое сохранит работу в необходимом формате с правильными настройками для печати.
По окончании работы сохраните шаблон в формате SVG, воспользовавшись командой File=>Save As (Файл=>Сохранить как). Это нужно для продолжения работы в других продуктах Adobe, например Adobe® Graphics Server, и тогда разработчик сможет связать напрямую данные сервера и ваш макет. Для этого нужно в настройках при сохранении поставить галочку «Включить данные Adobe Graphics Server».
Создадим Actions. Все действия аналогичны созданиям экшена в Photoshop. Нажмите New Action button. Введите название вашего экшена, и нажмите Record. Сохраните шаблон в желаемом формате и прекратите запись экшена. Теперь нам нужна пакетная обработка. Выберите Batch в диалоговом меню палитры Action и выберите наш свежесозданный экшен.
Пакетная обработка в Illustrator
Для Source выберите созданный Data set. Для Destination выберите None, и определите имя файла в File Name. Нажмите OK, чтобы запустить пакетную обработку. Готово, вы сохранили себе пару часов времени и освоили variables illustrator, поздравляю.
Вы можете создавать более продвинутые скрипты. Например, на текущем месте работы я разработал скрипт для перевода макетов на другой язык. Из Adobe Illustrator перегоняется текст в Excel. Один клик генерирует таблицу Exсel с текстом из макета, после перевода таблица загружается обратно в Adobe Illustrator и весь текст заменяется на переведенный.