четверг, 12 ноября 2009 г.

Скрипты InDesign: выпуск №1

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

Предуведомление

Практическую ценность от использования скриптов можно извлечь только в том случае, если они назначены на горячие клавиши. Иначе, получится дольше, чем если бы вы пользовались традиционными средствами. Т.е. скрипты предназначены именно для частого использования. Кстати, возможно вам пригодится эта заметка про шоткаты.

Скрипт для выравнивания объектов по сетке

Иногда некоторые графические объекты теряют свое выравнивание относительно сетки документа. Иногда умышленно, иногда нет. Но суть в том, что для того, чтобы выровнять объект по сетке приходится выполнить довольно трудоемкую, как это не странно, последовательность действий:
  1. прицелиться мышкой в объект,
  2. перетащить (либо сам объект, либо его границу)
  3. с последующим прицеливанием.
А если объектов несколько, то трудоемкость умножается на это самое «несколько». Ситуация не кажется плачевной просто потому, что её не с чем сравнивать (нет альтернатив). Однако, если хотя бы раз попробовать выровнять по сетке, все выделенные объекты одним нажатием клавиши, трудоемкость традиционного способа станет очевидной. Именно поэтому и был разработан соответствующий скрипт.

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



Установка

  1. Загрузите скрипт.
  2. Поместите его в папку C:\Program Files\Adobe\Adobe InDesign CS3\Scripts\Scripts Panel (у вас путь может немного отличаться)
  3. Назначьте на него шоткат в InDesign (не обязательно, но весьма желательно): Edit → Keyboard Shorcuts → Product Area = Scripts. Или откройте палитру Window → Automation → Scripts.
  4. Пользуйтесь!

Напутствие

  • Скрипты были успешно протестированы в реальной работе, однако не исключены случаи, когда может появиться неприятное окошко с ошибкой. Так что принимайте as is.
  • Если какой-то скрипт выполняется очень долго или вообще завис, должны помочь клавиши Ctrl+Break.
  • Скрипты можно изменять, передавать третьим лицам, удалять из них копирайт, но всё это на вашей совести :)
  • Идеи для создания новых скриптов приветствуются!
Автор: Роман Верник.

Комментарии:

Алексей Рытов:
13 ноября 2009 в 00:50
А обязательно вместе с элементами еще выделять и родительскую рамку?

Илья:
13 ноября 2009 в 02:22
Вместо ужасненькой функции mod, которая отнимает в цикле (!!!) вместо того чтоб делить и которая, к тому же, сваливается в бесконечный цикл при mod(10, 0) все ребята используют оператор %, который возвращает остаток целочисленного деления в яваскрипте. 10 % 0, к слову, вернет NaN (not a number), и никаких бесконечных циклов.

Роман Верник:
13 ноября 2009 в 12:21
Алексей Рытов: Совсем не обязательно. Так просто удобнее было выделить.
Илья: mod(10, 0) не может быть, т.к. в InDesign не может быть сетки размером 0. Оператор % использовался раньше пока не выяснилось, что он неправильно работает (или не работает) в случае дробного делителя. Поэтому и была придумана ужасная функция цикла. Если у вас есть вариант получше, с радостью рассмотрю :)

Андрей:
22 июля 2010 в 01:46
Перезалейте файлы на другой хостинг, ссылка битая. В прошлый раз не туда написал )

Nik Nightingale:
3 августа 2010 в 11:11
Здравствуйте. К сожалению, ни одна из ссылок на скачивание в 3х постах про скрипты не работает. Очень хотелось бы их использовать, если они подходят для CS5.

Андрей Шапиро:
11 ноября 2011 в 12:37
Файл нельзя скачать. Не могли бы вы его выложить еще раз?
Спасибо!

Александр:
6 марта 2013 в 12:50
Супер скрипт, спасибо!




Другие посты по этой теме:



Комментариев нет: