Home » Archive

Articles in the Скриптинг Category

Скриптинг »

[5 Сен 2010 | 3 Comments | ]
Поиск/замена отсутствующих шрифтов при помощи скрипта

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

Сейчас мы подробно рассмотрим как при помощи программирования можно заменить отсутствующий шрифт. Итак, начнем!

Скриптинг »

[29 Июл 2010 | One Comment | ]

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

Скриптинг »

[10 Июн 2010 | No Comment | ]

Наверное, многие согласятся с тем, что для того чтобы преуспеть в разработке скриптов, надо хорошо знать объектную модель InDesign. Но на мой взгляд, она совершенно необозрима. Можно удивлять коллег перечислением, какой объект сколько свойств имеет, но вряд ли кто сможет перечислить хотя бы пятую часть их.

Скриптинг »

[11 Май 2010 | No Comment | ]
Визуальный Style Override

Объектная модель сценариев (DOM) InDesign CS4 имеет малоизученное свойство TextPreference.enableStylePreviewMode, которое позволяет красным перечеркиванием текста или вертикальной полосой у абзаца выделять нарушения форматирования (style override) в обычном режиме отображения (Normal View) (см. рис. ниже).

Это довольно удобная вещь – выделение отклонений от форматирования, заданного стилями – поскольку обычным образом его поиски ведутся вручную.

Скриптинг, Скрипты »

[26 Апр 2010 | One Comment | ]

Наша любимая фирма Adobe Systems любезно предоставила нам скрипт SortParagraphs по сортировке абзацев. Но если надо отсортировать данные в нескольких разделах не затрагивая названия разделов, то этот скрипт мало помогает. Приходится вручную выделять абзацы каждого раздела и многократно запускать скрипт. Эта проблема для многих является актуальной и недавно на форуме по Индизайну rudtp.ru был задан такой вопрос:
Наверное, каждый программист решал бы эту задачу по своему. Мы попытаемся это сделать с применением небольшого количества объектного программирования. Уж очень просятся сделаться объектами рубрики с их содержимым.
Но чтобы выполнить такое деление вначале необходимо …

Скриптинг »

[26 Фев 2010 | No Comment | ]
Вкладки в диалоговом окне

Если вы пишите скрипт, который для своей работы использует много входных параметров, то для экономии места на экране можете воспользоваться системой вкладок. Такая возможность появилась в расширении JavaScript для InDesign CS3, CS4. К сожалению мне не удалось найти пример по программированию вкладок, но на основании имеющихся у меня других примеров, в которых дана логика построения панелей и прочих дочерних элементов окна, удалось их воссоздать. Привожу результат своих изысканий, быть может это окажется кому-то полезным.

Скриптинг »

[23 Окт 2009 | 3 Comments | ]

— Как организовать автоматическое добавление страниц в документ, если текст не помещается во фрейме?
После заполнения текстового фрейма содержимым, например из файла, вызываем эту функцию, которая добавляет новые страницы в конец документа с текстовыми фреймами на них.
Новые страницы с фреймами генерируются до тех пор, пока параметр overset перестанет быть истиной. При помощи функции myGetBounds(doc, pg) рассчитываются координаты и размеры фреймов (текст функции не приводится).

Скриптинг, Скрипты »

[15 Сен 2009 | 15 Comments | ]

Четвертое обновление сборника
Добавлены скрипты:
override_selection.jsx – перенос выделенных объектов с мастер-страниц на страницы документа (override)
extractpages.jsx – сохраняет часть страниц отдельным файлом
ProtectLocalStyling Indesign_ru – ранее приведенный скрипт не работал с русской версией InDesign CS4, в этом несовместимость устранена.
changeColorOfGuides.jsx – изменение цвета направляющих
RemoveGuide.jsx – удаление направляющих
ws_show.jsx – подсветка текста с отклонениями межсловных пробелов от  тех значений, которые определены в стиле.
ChangeCaseForStyle.jsx – изменение регистра для текста определенного стиля
DeleteEmptyPages.jsx – удаление пустых страниц
Move to Layer_2_2.jsx – Скрипт предназначен для перемещения объектов определенного типа на выбранный слой
FlyFirstLine.jsx – Текст абзаца начинается там, где кончается предыдущая строка
CreateOutlines …

Скриптинг »

[15 Июл 2009 | No Comment | ]

Иногда требуется проверить работу небольшого кусочка кода без запуска всего скрипта, например, чтобы проверить некоторые объектные свойства или протестировать какой-то промежуточный результат. Конечно, это можно сделать в среде разработки ExtendScript Toolkit, но еще быстрее это может получиться при использовании стандартного интерфейса Индизайна CS4 – панели Script Label (Window > Automation > Script Label), которую мы будем использовать как контейнер для проверяемого кода.

Скриптинг »

[5 Апр 2009 | No Comment | ]

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