Таблица П1.10. Проверка условий в разных языках
Язык |
Пример |
AppleScript |
if (условие) |
VBScript |
if (условие) |
JavaScript |
if (условие) |
П1.10. Циклы
Циклы используются для выполнения повторяющихся действий (табл. П1.11). Например, можно вставить в публикацию 10 пустых страниц- это пример простейшего цикла. Как правило, циклы используются в составе других управляющих структур, позволяя задействованным объектам менять (или не менять) свои свойства. Циклы всегда должны иметь определенное количество шагов- иначе возможно "зацикливание": когда он бесконечно повторяет заключенные внутри него действия.
Таблица П1.11. Организация циклов
Язык |
Пример |
AppleScript |
repeat (начальное значение, конечное значение, шаг) |
VBScript |
for (начальное значение, конечное значение, шаг) |
JavaScript |
for (начальное значение, конечное значение, шаг) |
П1.11. Функции
Функции (в VBScript и JavaScript известны как Functions, в AppleScript - как handlers) предназначены для повышения читабельности кода и представляют собой фрагменты кода, которые вызываются необходимое количество раз из основного скрипта. Как правило, им на обработку передаются определенные данные (параметры), а по окончании выполнения функции полученный результат возвращается в вызвавший модуль (табл. П1.12).
Таблица П1.12. Задание функций
Язык |
Пример |
AppleScript |
on название функции (параметры) |
VBScript |
function название функиупл (параметры) |
JavaScript |
function название функции (параметра) |
П1.12. Пример
Далее приведен пример реализации простейшего скрипта на трех языках для тех, кто еще не имеет опыта программирования - возможно, какой-то из этих языков покажется более удобным. В данной книге основной упор сделан на JavaScript, как наиболее распространенный язык в связи с его использованием в интернет-браузерах. Описание его возможностей, достаточное для решения большинства задач в InDesign, приведено в приложении 2.
При программировании вы постоянно будете создавать переменные - в них временно хранятся значения, результаты вычислений, ссылки на объекты и т. п. Для удобства им присваивают имена, раскрывающие их смысл: например, textFrame- для текстового фрейма, раде- для страницы и т.д. Для того чтобы переменная, которую вы создаете, случайно не совпала с одним из зарегистрированных методов и свойств InDesign (их названия тоже выбраны так, чтобы легко запоминались), хорошим тоном может быть добавление приставки ту: например, myTextFrame, myPage И Т. П.
Рассмотрим скрипты, выводящие текст с приветствием в новом документе (листинги П1.1-П1.3).
Для этого потребуется выполнить следующие шаги:
1. Установить связь с InDesign.
2. Создать новый документ.
3. Создать на первой странице текстовый фрейм.
4. Добавить во фрейм текст.
П1.12.1. AppleScript
tell application "Adobe InDesign CS3" set myDocument to make document tell page 1 of myDocument set myTextFrame to make text frame
set geometric bounds of myTextFrame to {"10mm", "10mm", "24mm", "24mm"} set contents of myTextFrame to "Hello, World!" end tell end tell