Выбор значений абзацных отступов
Вопрос без ответа
Меня всегда смущала произвольность выбора отбивок до и после заголовка в описании стиля. И ответы на этот вопрос были от «Чтобы был воздух» или «Чтобы было приятно глазу» до «Да от балды! : ) Лишь бы они были».
Но вариантов приятного глазу воздуха в заголовков может быть немало, и хотелось поверить эту гармонию алгеброй, да долгое время не было инструмента для решения такой задачи.
И вот с освоением скриптинга можно не спрашивать, а предложить свое понимание этого вопроса.
Итак, сформулируем его несколько иначе: сколько строк интерлиньяжа заголовка должно помещаться в пространстве его верхней и нижней отбивок, и как должны соотноситься эти отбивки?
Математическое описание гармонии
Одна из известных гармонических пропорций — это золотое сечение; интересен ряд чисел Фибоначчи — 3, 5, 8, 13, 21, 34, 55,… — в нем отношение соседних чисел тоже дает соотношение золотого сечения; число пи — отношение длины окружности к диаметру; основание натуральных алгоритмов; корень из двух, в общем, есть немало неслучайных чисел, использовавшихся ранее в зодчестве, построении макета книг, живописи. Почему бы для решения сформулированной ранее задачи не попробовать ограничить выбор чисел этими значениями?
Программа для решения этой задачи
Вот окно скрипта, с помощью которого можно упорядочить отбивки выбранных стилей.
В левой колонке отображаются все созданные пользователем стили, в правой — те, что выбраны для обработки.
Если флажок «Число строк интерлиньяжа в отступах заголовка сверху и снизу» сброшен
то программа считывает из описания стиля значение верхней и нижней отбивок, суммирует их, а затем пересчитывает отбивки в соответствии с выбранной пропорцией.
Если флажок установлен, то пользователь может в поле этой строки ввести число строк интерлиньяжа, определяющее пространство отбивок. Это число не обязательно должно быть целым. При вводе дробного числа в любом из этих полей в качестве разделителя целой и дробной частей используется точка, а не запятая, отрицательные значения вводить нельзя. Программа умножит введенный множитель на значение интерлиньяжа заголовка, так будет определена сумма верхней и нижней отбивок. Затем на основе определенной пользователем пропорции «Соотношение отбивок абзацев» будут вычислены и переопределены в описании стиля значения отступов.
Как с ней работать?
Если уже есть верстка, и хотите найти более приятное глазу значение отбивок заголовков, то флажок «Число строк интерлиньяжа в отступах заголовка сверху и снизу» должен быть сброшен. В этом случае переверстки не будет. Если брать числа Фибоначчи, то, на мой вкус и взгляд, лучшее соотношение получается, когда берутся не соседние числа, а через одно, например, 55 и 21. Возможно, кому-то больше понравится брать для этой пропорции соседние числа.
Если работа делается с нуля, то можно создать набор заголовков, определив в них только кегль, интерлиньяж и выключку, а затем запустить скрипт, установить флажок и определить в программе число строк и пропорцию. После этого выбранные заголовки будут с пропорционально одинаковыми отбивками.
Это, конечно, не мешает взять в качестве числителя и знаменателя пропорции другие значения, например, 3 и 1.25.
***
Для меня в этом подходе к верстке главное, что можно быстро делать одинаково пропорциональные заголовки, используя не случайные числа, и при необходимости быстро менять выбранную пропорцию. Тут можно подумать и о пропорциональности отбивок и полей полосы набора, такой скрипт есть на нашем сайте, но я пока не готов говорить об этом. Надо набрать опыта и понимания работы с одинаково пропорциональными заголовками.
Михаил Иванюшин
Ivanyushin#yandex.ru
Скачать скрипт HarmonySpaceAroundHeader.jsx
P.S. Будут вопросы — пишите, но отвечу не раньше 20 июня. Впереди две недели отпуска в зоне, свободной от Интернета — на даче.
Здравствуйте!
У меня на машине (WinXP SP2, InDesign CS3 & CS4) скрипт почему-то выдает ошибку:
http://imagepost.ru/?v=error_for_script1.jpg
Непонятно, почему такая ошибка.
У меня постоянно это работает, как часы.
Пришлите мне на адрес ivanyushin@yandex.ru файл, на котором это происходит.