Как добавить сценарий в индизайн

Обновлено: 06.07.2024


743
РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ INDESIGN
Автоматизация
Последнее обновление 18.5.2011.
Файл источника данных содержит сведения, которые различаются в разных экземплярах целевого документа, например, имена и адреса получателей в стандартном письме. Файл источника данных состоит из полей и записей.Поля содержат определенные данные, например, имена компаний или почтовые индексы, а записи – это строки с полным набором данных, например, с именем компании, адресом, городом, областью и почтовым индексом. Источником данных может быть файл с разделителями-запятыми (CSV) или файл с разделителями-табуляциями (TXT), где поля данных разделены запятыми или символами табуляции соответственно.
Целевой документ – это документ InDesign, который содержит заполнители полей данных, а также содержимое шаблона (текст и другие элементы, которые остаются неизменными в каждом объединенном документе).
Объединенный документ – это итоговый документ InDesign, содержащий шаблонные элементы целевого документа, которые повторяются столько раз, сколько необходимо для обработки каждой записи в источнике данных.
Объединение данных
А. Файл источника данных Б. Целевой документ В. Объединенный документ
Основные этапы объединения данных
1. Определите, какие поля данных будут использоваться в источнике данных и целевом документе.
Определите, как должен выглядеть итоговый документ, и выясните, какие поля необходимы для выполнения объединения. Например, при создании почтовой открытки, рассылаемой клиентам, вероятно, будут использоваться следующие поля:
> > > > >
Электронная таблица или база данных может выглядеть следующим образом.
Образец файла данных
A
Б
В
Empowered Writing
17404 NE 25th Street
Vancouver, WA 98684
dotPS Document Production Services
6365 Santana Row
San Diego, CA 92110
Adobe Systems, Inc.
345 Park Avenue
San Jose, CA 95110
>

>, >


744
РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ INDESIGN
Автоматизация
Последнее обновление 18.5.2011.
2. Сохраните файл источника данных (обычно это электронная таблица или база данных) в виде файла с
разделителями-запятыми (CSV) или файла с разделителями-табуляциями (TXT).
Убедитесь, что файл источника данных структурирован таким образом, что необходимые поля доступны для включения в целевой документ. Например, верхняя строка электронной таблицы должна содержать имена полей, используемых в целевом документе (»Компания», «Адрес» и др.).
Дополнительные сведения см. в разделе «
Сведения о файлах источника данных
» на странице 744.
3. Создайте документ, содержащий текст и другие элементы, которые остаются неизменными в каждой
версии целевого документа.
Дополнительные сведения см. в разделе «
Сведения о целевых документах
» на странице 745.
4. Выберите источник данных при помощи палитры «Объединение данных».
Дополнительные сведения см. в разделе «
Выбор источника данных
» на странице 746.
5. Вставьте поля из палитры «Объединение данных» в целевой документ.
Поля могут быть добавлены как на страницу документа, так и на страницу-шаблон. При добавлении полей данных на страницу-шаблон доступны дополнительные параметры.
Дополнительные сведения см. в разделах «
Вставка полей данных
» на странице 746 и «
Добавление заполнителя поля данных на страницу-шаблон
» на странице 747.
6. Просмотрите записи и убедитесь, что целевой документ будет выглядеть так, как планировалось.
Дополнительные сведения см. в разделе «
Просмотр записей в целевом документе
» на странице 748.
7. Объедините целевой документ с исходным файлом данных или экспортируйте его в формат PDF.
Дополнительные сведения см. в разделе «
Объединение записей
» на странице 750.
Сведения о файлах источника данных
Обычно источник данных создается в приложениях по работе с электронными таблицами или базами данных, но можно создать собственный файл источника данных при помощи InDesign или любого текстового редактора. Файлы источников данных обычно сохраняют в формате файла с разделителями-запятыми (CSV) или с разделителями-табуляциями (TXT). Обратитесь к пользовательскому руководству приложения, в котором создавался файл источника данных, за дополнительными сведениями об экспорте в эти форматы.
В файле с разделителями-запятыми или разделителями-табуляциями записи разделяются абзацами, а поля – запятыми или символами табуляции. Файл источника данных может также содержать текст или пути к изображениям на диске.
Пример файла источника данных с разделителями-запятыми
Name,Company Name,State
Bill Tucker,CoreVent Labs,Nevada
Dat Nguyen,"Brady, Hunt, and Baxter, Inc",Delaware
Maria Ruiz,"Brinquist Enterprises, Inc.",California
Для ввода запятых или кавычек в файл с разделителями-запятыми заключайте текст в кавычки, например: «Brady, Hunt, and Baxter, Inc.». Без кавычек каждое имя рассматривается как отдельное поле.
В поля файла источника данных нельзя вставлять разрыв строки. Если требуется разделить поле на несколько строк, создайте два разных поля, например > и >.

Хитрости и секреты, приемы работы, уроки

Особенности новой версии Индизайна

Описание плагинов, информация о плагинах для работы с Adobe InDesign

Готовые к использованию скрипты для Adobe InDesign

Описание языка, приёмов и методов программирования для Adobe InDesign

Процесс установки скриптов сводится к копированию файла скрипта в папочку Script Panel. Казалось бы всё просто. Но не тут то было. Часто невозможно добраться до этой папки средствами системы, так как папка скрыта от пользователя. Да и путь у нее такой, что чёрт ногу сломит. Например, в Windows она располагается по адресу:

c:\Users\User\AppData\Roaming\Adobe\InDesign\Version №\en_US\Scripts\Scripts Panel\

Существует и более простой способ открыть папку Scripts Panel. Для этого надо в Индизайне войти в меню панели Scripts, выбрать пункт Reveal in Explorer, и папка будет открыта средствами системы (Проводник или Finder). Остаётся вставить в неё ранее скопированный скрипт.

reveal_in_explorer

К сожалению, при помощи панели Scripts невозможно сразу открыть папку, куда копируются скрипты типа Startup, то есть стартующие вместе с запуском Индизайна. Невозможно в стандартной комплектации Индизайна. Но если использовать скрипт InstallScript.jsx, (автор Olav Martin Kvern ), то процесс установки скриптов значительно упрощается. В результате работы этого сценария в меню панели Scripts появляются дополнительные пункты, смотрите рисунок ниже.

scripts-panel-with-new-menu-items

AddPathOperationsToLayoutMenu3

Идея создания настоящего материала возникла летом, во время подготовки обзорной статьи «Лед тронулся, или Приключения InDesign в России» (КомпьюАрт №7’2001). Тогда авторам было мало что сказать по существу вопроса. Сейчас же ситуация изменилась. Полгода мы проработали в InDesign и добились, на наш взгляд, выдающегося результата — ВЕСЬ «КомпьюАрт» верстается в этом замечательном издательском пакете. Номер, который у вас сейчас в руках, уже третий, полностью подготовленный в среде InDesign 1 . Нам очень интересно и комфортно работать в нем — во многом благодаря постоянному ощущению свободы и всесильности, возникающему на всех стадиях издательского процесса. Важной составляющей этой свободы является возможность гибкого программирования собственных задач и высвобождения собственного Времени для достойных дел. Ребята из Adobe Systems проделали отличную работу и хорошо постарались ради существования этой возможности.

Кому и зачем?

Дефинируем предмет рассмотрения. Скрипт — серия команд, указывающая InDesign, какие действия ему следует выполнять в определенный момент времени при соблюдении или несоблюдении соответствующих условий. Эти действия могут быть как одиночными и влиять исключительно на один, выбранный в данный момент объект, так и входить в состав чрезвычайно сложной структуры, влияющей на многие объекты и публикации. Таким образом, скриптинг 2 — увлекательный и творческий процесс, позволяющий решать посредством несложного программирования абсолютно любую задачу, выполнимую в InDesign штатными средствами (работа с инструментами, меню, палитрами, диалогами).

Скриптинг доступен не только профессиональным разработчикам программного обеспечения. Более того, он для них не предназначен. Верстальщику — «версталово», а программисту — «программерово». Для профессиональных разработчиков существует SDK — Software Development Kit for InDesign, который Adobe Systems предоставляет в свободном доступе. Скриптинг же доступен каждому пользователю InDesign.

Широкое распространение InDesign и появление достаточного количества пользователей, способных программировать свои задачи и добиваться максимальной эффективности своей работы, способны взорвать и кардинально изменить сложившееся за 10 лет эпохи Десктопа представление о профессии верстальщика. К глубокому сожалению авторов, авторитет зубров-метранпажей 3 и их традиционно высокое в негласной иерархии типографских работников место остались в прошлом. Ныне в основном превалирует отношение к верстальщику, как к низкоквалифицированной рабочей силе, что-то вроде «посадимдевочкузалитьтекстнаполосы». Надо отметить, что некоторые горе-«верстальщики» сильно способствуют этому. Но речь не о них. Владение скриптингом может и должно стать основным аргументом верстальщика при трудоустройстве. Ведь экономия времени, необходимого для выполнения рутинных задач, в разы — серьезное повышение эффективности допечатного процесса, суть — прямое конкурентное преимущество предприятия. А какое наслаждение запустить скрипт собственного изготовления и наблюдать за тем, как публикация верстается «сама»! Скриптинг — как процесс, безусловно, творческий — способен одухотворить деятельность верстальщика, придать ей шарм и избавить от ощущения «одного и того же». Наконец, полномасштабное владение скриптингом и знание общей типографской культуры могут служить серьезным источником дополнительного дохода. Ни один программист (если он никогда не занимался версткой) не в состоянии элементарно сформулировать задачу по автоматизации издательского процесса, не говоря уже о ее реализации и отладке. Разумеется, речь здесь идет не о глобальных плагинах и дополнениях, над которыми работают целые коллективы специалистов, а о маленьких скриптиках, учитывающих особенности и потребности конкретного издательского процесса, но дающих в итоге огромную экономию временных ресурсов.

Надеемся, что необходимость и полезность освоения скриптинга в InDesign очевидна всем. Итак, приступим!

Среда разработки

До единого аппаратно-платформенного стандарта в DTP-индустрии очень далеко, и с программной средой разработки, отлаживания и исполнения скриптов для InDesign ситуация обстоит так же, как и во всей отрасли. Для PC пишем на Visual Basic, для InDesign под Mac OS — на AppleScript. К сожалению, конструкции скриптов для InDesign под этими программными средами отличаются семантикой, но логика работы одна и та же. Авторы не имеют возможности тестировать и отлаживать скрипты под Macintosh, поэтому, не желая отбирать хлеб у наших коллег, приверженцев платформы Apple, мы лишь кратко остановимся на сути скриптинга под Mac OS, а в дальнейшем будем рассматривать в качестве программной среды Visual Basic (VB). К тому же предварительный анализ семантических конструкций обеих программных сред позволяет надеяться на появление в недалеком будущем скрипт-конверторов VB « AppleScript.

Итак, для успешного скриптинга в InDesign на платформе Apple нам необходимо наличие в системе интерпретатора AppleScript, который входит в стандартную поставку любой из Mac OS, и одного из доступных редакторов (AppleScript editor, Scripter, Script Debugger, etc.)

Для скриптинга в InDesign на платформе Windows необходимо установить Microsoft Visual Basic либо использовать любое приложение, содержащее Visual Basic for Applications (VBA). Такие пакеты, как MS Office, AutoCAD, Corel, Visio и др., содержат в составе поставки VBA. InDesign, к сожалению, пока не комплектуется VBA, но вполне успешно его поддерживает. На сайте Adobe Systems, в форуме, посвященном скриптингу в InDesign, появлялась неофициальная информация о том, что InDesign 2.0 будет снабжен необходимыми компонентами VBA для работы со скриптами непосредственно в пакете 4 , но эти ожидания пока не оправдались.

Базовые понятия

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

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

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

Таким образом, скриптинг в InDesign является типичным случаем объектно-ориентированного программирования. Схожие по тому или иному признаку объекты объединяются в классы (classes), обладают свойствами (properties), манипуляции над объектами осуществляются посредством методов (methods) в Windows или команд (commands) на Macintosh.

Объектные ссылки

Вышеприведенные конструкции являются объектными ссылками (object reference) и позволяют реализовывать принцип однозначности идентификации объекта. Таким образом у каждого объекта существует уникальная объектная ссылка.

Классы объектов

Объекты со схожими свойствами объединяются в классы. Так, все типы фреймов — прямоугольники, полигоны, овалы и фреймы свободной формы — принадлежат классу объектов PageItems и обладают свойствами, общими для всех других типов объектов этого класса. Например, свойство Geometric location является общим для всех объектов класса PageItems.

Наследование свойств

Типы объектов класса наследуют ряд свойств этого класса. Прямоугольник наследует свойство fill от класса PageItems, как и все прочие типы фреймов. Вместе с тем, объекты могут обладать свойствами, которыми не обладают объекты другого типа данного класса. У текстового фрейма есть свойство TextContents, которым фреймы другого типа не обладают.

Поддерживаются данные пяти типов:

  • Boolean (логический тип данных true or false);
  • Integer (целое);
  • Double (вещественные числа);
  • String (строка символов, заключается в двойные кавычки);
  • Array (массив данных любого типа).

Отдельно стоит описание данных как Variant, но об этом позднее.

Переменные

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

В AppleScript присвоение значений осуществляется с помощью оператора set:

Операторы

Используются для выполнения вычислений над переменными и данными. Оператор возвращает какое-либо значение, которое зависит от типа данных, над которыми производятся вычисления. Это может быть как числовая величина (MyWidth/2), так и логическое значение (в случае использования оператора сравнения MyWidth > MyHeight).

Команды и методы

Команды в AppleScript и методы в VB по сути являются «глаголами», сообщающими системе, что именно необходимо сделать с тем или иным объектом.

Так, в VB для создания нового объекта используется метод Add, для привязки переменной к объекту — метод Set и оператор равенства (=) для изменения свойств объекта.

В AppleScript команда make создает новый объект, set изменяет его свойства, а get позволяет получить от объекта информацию о его свойствах.

Условные выражения

Структуры управления

Предположим, что нам необходимо выполнить какое-либо действие несколько раз подряд. Записать последовательно несколько строк, описывающих это действие? А если существует необходимость в выполнении ста итераций? Для этих целей и существуют структуры управления.

Следущие конструкции исполняют последовательности операторов скрипта (тело цикла) заданное количество раз.

Несколько более сложная конструкция управляющей структуры, которая выполняет тело цикла до тех пор, пока ограничивающее условие истинно.

Координатная сетка

Как и все современные пакеты верстки, InDesign использует стандартную 2D геометрию для точного позиционирования объекта на полосе. Горизонтальный компонент координатной пары (точки) обозначается как x, вертикальный — y. Эти координаты отображаются в палитре Transform, при выборе объекта инструментом «указатель». Геометрический ноль полосы в InDesign находится в левом верхнем углу полосы. Таким образом, положительное направление по оси X — слева направо, а по оси Y — сверху вниз. Важно помнить про последовательность записи координат объектов: сначала x, затем y! InDesign ждет от нас именно такую запись. Следующий скрипт создает новую публикацию, в ней новый объект, а затем перемещает его на 10 мм вправо и на 40 мм вниз.

Однако обратите внимание: при различных запросах InDesign выдает разные значения координат. Координаты геометрической границы объекта и его видимой границы есть различные массивы данных, включающие в себя по четыре значения: для верха (y), левого края(x), низа (y) и правого края (x).

Переходим к практике

Специфика журнальной публикации не позволяет в полной мере развернуть все особенности конструкций скриптинга и снабдить их подробными примерами, как это могло бы быть в отдельном издании-учебнике. Но мы и не ставили перед собой подобную задачу. В дальнейшем мы продолжим конспективное изложение основ скриптинга и его диалектов на VB и AppleScript, главный же смысл серии публикаций, посвященных скриптингу, мы видим в решении с его помощью конкретных издательских задач.

Мы осваивали тонкости скриптинга в InDesign именно по этому руководству, в котором подробно и с примерами описывается каждая семантическая конструкция диалектов VB и AppleScript. Результатом наших экспериментов является появление и внедрение в производственный процесс издательства «КомпьютерПресс» нескольких очень полезных, на наш взгляд, облегчающих жизнь и экономящих время и верстальщикам и корректорам издательства. Один из этих скриптов, текст которого приведен на следующей полосе, мы предлагаем сегодня вашему вниманию. Наберите, протестируйте, отладьте, скомпилируйте из него исполняемый файл и распространите его среди своих коллег. Их благодарность не будет знать границ!

Верстка любого материала начинается с размещения текста на полосе и с его предобработки, которая, как правило, происходит при помощи операций поиска и замены. Утомительное занятие! Настоящий скрипт как раз и занимается предобработкой помещенного текста: расставляет символы неразрывного пробела после каждого односимвольного слова, удаляет двойные пробелы, заменяет там, где необходимо, дефис на тире и меняет западные типографские кавычки (“лапки”) на принятые в отечественной типографике («елочки»).

Логика скрипта основана на анализе текущего символа и двух предыдущих. Для визуализации процесса скрипт снабжен прогресс-индикатором, который вам необходимо нарисовать в любом редакторе форм и включить в проект в виде файла zam.frm.

Скрипт, безусловно, можно оттачивать, модифицировать и усложнять. Можно добавить процедуру предварительного выбора вариантов при помощи CheckBox: что включать в список замен, а что нет. Можно добавить замену иксов между цифрами на знак умножения (2x2 ® 2×2). Можно многое и не только с этим скриптом. Надеемся, что настоящая публикация подвигнет вас к экспериментам, уважаемый коллега. Обязуемся публиковать любой присланный нам законченный и работающий скрипт.


Скриптинг как средство быстрого выполнения большого объёма рутинной работы — вещь незаменимая. Разумеется, в дизайнерских программах, например, Photoshop и Illustrator CS, она не может проявить себя в полной мере: дизайн — процесс творческий, рутины в нём не так уж много. Зато верстальный пакет, такой как InDesign, — прекрасный кандидат для применения скриптов. Большие объёмы текста и иллюстраций, многочисленные графические элементы оформления, связи с внешними источниками — всё это диктует автоматизацию задач именно при сборке публикаций. Можно смело утверждать, что поддержка скриптинга — одно из главных преимуществ InDesign перед QuarkXPress, сыгравшее немаловажную роль при переходе верстальщиков в лагерь Adobe.

Во-первых, значительно расширены интерфейсные возможности. В Illustrator нельзя создать пользовательские окна диалога, и выход из положения — использовать ограниченные возможности JavaScript. А в InDesign создаются диалоговые окна любой сложности (даже с подгруппами элементов). В них присутствуют разные типы кнопок (в т. ч. радио), всплывающие списки и прочие элементы «красивой» жизни, упрощающие дизайнеру управление скриптом. Но диалоговыми окнами целесообразно пользоваться только в сложных скриптах, требующих массы параметров. В большинстве же задач достаточно стандартного окна запроса, знакомого по JavaScript и подробно описанного в той же статье. Упрощается сам скрипт, повышается его читабельность.

Во-вторых, в InDesign адекватно решаемым задачам развит механизм автоматического переноса публикации на другую платформу — например, для размещения в Сети (через XML), в т. ч. с сохранением интерактивности (за счёт поддержки событий типа mouseIn и mouseOver). Это реализация концепции Create once, ready everywhere — однажды созданный документ без проблем адаптируется к любому виду.

Как и для Illustrator, для InDesign можно писать скрипты на любом из трёх языков — Visual Basic (для почитателей продукции Microsoft), AppleScript (Mac OS) и платформенно-независимом универсальном JavaScript, хорошо известном веб-мастерам. Для двух первых в InDesign есть дополнительное удобство: для любого объекта выбирается желаемое действие из списка операций. При ориентации же на JavaScript вам придётся основательно изучить справочное руководство. Если никогда не занимались программированием, ознакомьтесь с основами скриптинга в упомянутой выше статье. Хотя в ней рассматривается механизм Illustrator, неспециалист легко разберётся в базовых понятиях, что облегчит миграцию на InDesign.

Взаимные связи между типами объектов хорошо согласуются с отношениями в Illustrator, но имеют специфику. Объект высшего уровня — сам InDesign, в нём может быть открыто одновременно несколько документов, один из которых — активный (activeDocument). Затем градация идёт по объектам, расположенным непосредственно на страницах (или разворотах) и отдельно — на монтажном столе (pasteboard). Многие объекты InDesign существуют в двух ипостасях: связанные с текущим документом (набор образцов цвета, стили абзацев, отдельных символов и печати, шрифты) и имеющие более высокий уровень — приложения, не зависящие от конкретного документа. К последним относятся настройки отображения публикации на экране, язык и др. Интересно, что с внешними источниками можно работать, как с Image (если растровый объект) либо EPS и PDF.

Механизм скриптинга позволяет обращаться к любому месту в публикации, причём не только в текстовом контейнере, но и в таблице, к графическим элементам, направляющим. Это снимает ограничения на управление некоторыми объектами, существующие в Illustrator CS. Разработчики уделяют скриптингу именно под InDesign много внимания, отсюда меньше недочётов по сравнению с векторным редактором. А вот подключить библиотечные файлы, как в Illustrator, к сожалению, нельзя.

Цель статьи — не научить скриптингу, а заинтересовать написанием собственных скриптов. Лучший способ — рассмотреть несколько типовых задач верстальщика. Выберем относительно несложные — на них вы прочувствуете, как это делается, а позже, освоившись с механизмом скриптинга под InDesign, вам будет легче перейти к сложным вопросам.

Удаление неиспользуемых цветов, стилей символов и абзацев

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

Разумеется, в конце работы скрипт должен выдавать отчёт о внесённых изменениях. В первоначальный момент их нет (CS — сокращение от characterStyles, PS — paragraphStyles, TF — textFrames):

Для сокращения размера скрипта будем использовать ссылку на родительский объект для всех участвующих элементов — на открытый документ:

К неиспользуемым цветам в скриптовой модели InDesign можно добраться через специальный объект unusedSwatches. Таким образом, нам достаточно сначала проверить, присутствуют ли такие цвета в публикации (свойство length «количество» > 0), и если да, то по очереди их удалять и заодно вести учёт:

Строчка app.findPreferences = null необходима для сброса предыдущих параметров поиска, иначе могут остаться значения в тех полях, которые в новом поиске не используются. Аналогично действуем, удаляя неиспользуемые стили абзацев:

С первой частью скрипта разобрались. Что касается второй (поиск пустых текстовых контейнеров), то воспользуемся методом «contents», позволяющим работать с содержимым textFrames. Если контейнер пуст и не имеет цвета (это проверять обязательно, поскольку часто цветные текстовые фреймы используются в дизайнерских целях), он удаляется; заблокированный придётся предварительно разблокировать.

Вместо конструкции if ((tF[i].contents == "")||(tF[i].contents == " ")) и т. д. с длинным перечислением условий проверки воспользуемся упрощённым способом — через оператор switch / case, а служебный символ «\r» обозначает символ абзаца.

В конце выводим отчёт о работе:

Что дальше?

Одна из задач, где также в полной мере проявляется польза от скриптинга, — создание каталогов с продукцией, когда из заранее подготовленной и тщательно выверенной базы данных скрипт берёт информацию и вставляет в соответствующие места в публикации (контейнеры с определёнными идентификаторами). Всё выполняется очень быстро, и риск получения ошибки по сравнению с обычным способом сведён к минимуму. Аналогичный подход можно использовать и при печати переменных форм, экономя на приобретении специализированных решений от Datalogics, Em Software, Sansui Software или XMPie. Другая сфера использования скриптинга — форматирование: например, оформление некоторым образом первого слова во всех статьях публикации (например, всеми заглавными) либо вставка определённого значка в конце.

Автор недавно автоматизировал задачу сложного форматирования списков использованной литературы в одном научном журнале — номер источника должен был быть выполнен обычным начертанием, авторы — курсивом, а всё остальное — опять обычным. Раньше подобная задача решалась написанием соответствующего макроса в Word с последующим внедрением уже подготовленного текста в XPress, теперь же всё делается прямо в пакете вёрстки. А вообще, задач, решаемых с помощью скриптинга, множество. Человек создан для творчества, а не для рутины. Давайте поручим её компьютеру.

Читайте также: