Data Merge в inDesign

Как и любой представитель человеческого рода, я стараюсь как можно меньше выполнять механической работы и как можно больше думать головой. В моём случае под механической работой подразумевается верстка каталогов, визиток, буклетов и прочих шаблонных вещей. Обычно вышеперечисленные форматы имеют готовый дизайн, и нужно просто изменить текст/картинки. В inDesign есть для этого замечательная функция, Data Merge. Освоим её, выполнив упражнения по вёрстке большого количества простеньких визиток.


Создадим простой шаблон визитки в InDesign с тремя текстовыми фреймами и одним фреймом для картинки: имя, должность, телефон, для картинки рисуем пустой блок с помощью инструмента «Rectangle Frame Tool».


Далее уходим в Excel, и создаём очень простенькую таблицу с данными. Пока что сами, в дальнейшем это за вас должен будет делать либо клиент, либо это будет экспорт из базы данных.  Обратите внимание: нельзя использовать символ «запятая (,)». Для InDesign это будет означать разделитель. Замените запятую на любой другой символ (например, смайлик ☺), и после сборки файла произвести автозамену символа.  Для изображений необходимо указать полный путь до картинки, вида C:\Job\15\InDesign\Links\realFoot.jpg.

Внеся данные, сохраняем документ в формат «CSV (разделители — запятые)», закрываем эксель, открываем вновь созданный файл Блокнотом. На данном этапе уже можно заменить ваши символы, которые вы использовали вместо запятых, на полноценные запятые. Символ двоеточия (;) так же необходимо заменить на запятые.

Сохраняем файл как обычный текстовой документ, кодировка файла unicode. Это стандарт, который содержит информацию о том, в каком месте таблицы символов расположен определенный символ. Иногда вам будут лгать, что кодировка должна быть ANSI, не слушайте. Вас пытаются ввести в заблуждение, InDesign не распознаёт русские символы в ANSI. Получиться должно как на картинке:

<

Далее переходим в InDesign: Windows -> Automation/utilities -> DataMerge. В появившемся окне выбираем пункт «Select Data Source…», и выбираем наш txt файлик. В окне DataMerge появятся заголовки, которые можно простым drag&drop перетащить на наши заранее созданные поля в визитке. Если всё пройдёт успешно, то заголовок поля на нашей визитке встанет в двойные угловые скобки. Что бы убедиться в кощерности подхода, нажмите в окне DataMegre кнопку preview, у вас должны появиться данные из таблицы на визитке.

Следующим шагом будет пункт Create Merged Document…». Выбираем его, откроется окно в котором нужно поставить напротив пункта Records per Document Page значение «Multiple Record»,  это позволит сделать сразу несколько визиток на одной странице. На второй вкладке расставляем отступы.

И, в общем то, всё, осталось нажать кнопку ОК и экспортировать результат в нужный формат. Как вы понимаете, данный подход поможет вам сверстать не только визитки, но и любую другую полиграфическую продукцию. Удачи!

8 комментариев

  1. Marker

    Вы меня cпасли) Хоть один человек написал про разделители-запятые… а то ни на форумах, ни в студии никто не мог мне подсказать, как запятые верно проставить.

  2. avariself

    Три года работала, не зная, что таким способом можно и картинки вставлять)))

  3. ausweis_on_the_sky

    мне нужно сделать нумерацию страниц только на одной половине страниц, как это сделать

    • your-scorpion (Author)

      1. В экселе сделайте нумерацию от 1 до 100.
      2. В inDesign, в мастере создаем пустой фрейм, переходим в keep options, выставляем in next frame. Сохраняем как номер и применяем к пустому фрейму.
      3. Заходим на первую страницу, которая должна нумероваться, ctrl+shift+click и вставляем нумерацию из экселя. Далее на вторую страницу идем и повторяем действие с shift, все произойдет автоматически.

  4. Yaroslav

    Спасибо за полезную инструкцию. А можно как то в иллюстраторе вставлять переменные данные из внешнего источника? При отправке макетов заказчику часто требуется заполнять сопроводительную таблицу. Было бы удобно автоматически вставлять туда данные к примеру из экселя.

    • your-scorpion (Author)

      Возможно, вам подойдет Variable в Illustator. Оно позволяет настраивать переменные данные для текста, изображений, диаграмм и параметров видимости. Я с помощью этой штуки готовил сотни баннеров буквально за 10 минут. Основной принцип работы в сохранении XMLки с переменными, заполнении XMLки и обратной загрузке готовых DataSet’ов. У меня есть мини-урок с описанием процесса работы.
      Создание переменных данных в Illustator

      Общий процесс такой: вы создаете один экземпляр макета, выделяете объект, который необходимо динамически изменять (!динамические изображения это картинки, которые вы поместили в документ через File=>Place (Файл=>Поместить) с включенным флажком Link (Связь), внедренные картинки не работают), и кликаете по кнопке Make Object Dynamic. Тем самым вы создаете cвязанную файловую переменную (Linked File variable), текстовую строковую переменную (Text String variable), или переменную графических данных (Graph Data variable), в зависимости от типа выбранного объекта.

      Далее нажмите на кнопку Capture data set в палитре Variables, чтобы зафиксировать данные переменных. Выбираете Save Variable Library из меню палитры Variables, и сохраняете XMLник, в который можно забить нужные данные и подгрузить обратно в illustrator. Экспортирование множества макетов с динамическими данными происходит с помощью пункта меню Batch панели Action.

      Еще можете посмотреть в сторону Adobe Scene7. Сам не пользовался, но наслышан). Либо PrintShop Mail.

  5. Саша Григорьева

    Я не могу понять, как добиться правильного импорта файлов, со всей этой кодировкой файла с данными = ((((

    • your-scorpion (Author)

      При первой попытке работы с Data Merge нужно посмотреть настройки импорта. Есть специальная галочка для этого.
      Это необходимо для того, чтобы Индизайн запомнил что было импортировано и с какими настройками. Если вы решите использовать другие разделители или кодировки, эту галочку нужно поставить повторно.
      Настройки

      В остальном процесс такой же, как описан в статье:
      1. Создаете источник базы в экселе или другом редакторе.
      2. Сохраняете в Юникоде *.txt
      3. В Индизайне создаете универсальный макет.
      4. Загружаете текстовой файл с данными через Select Data Source. Настраиваете красивости.
      5. Экспортируете в pdf из меню Data Merge. Получаете многостраничный PDF.