Избранное »

22.09.2014 – 07:27 | 2 комментария | 27 205 views

Здравствуйте все, кто работает в Индизайне!
Извещаем вас о том, что на youtube.com работает канал «InDesign Мастерская вёрстки». Там уже размещены более 70 видео с полным описанием как работать с программой DoTextOK. Другие интересные темы, касающиеся работы …

Читать полностью »
Работа в InDesign

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

Новая версия!

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

Плагины

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

Скрипты

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

Скриптинг

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

Home » toplist, Работа в InDesign, Скрипты

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

Добавлено на 02.09.2010 – 02:242 комментария | 4 368 views

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

Еще в 1995 году Сергей Рыжов написал скрипт EndParagraphWords.js, который производит разгонку текста в абзаце, пока количество символов  в последней строке не превысит минимально заданное. Скрипт предназначался для использования в газете объявлений.

EndParaWords

Он хранится на сайте adobescripts.info, но в последних версиях Индизайна (CS4, CS5) не работает. Пришлось его немного подлечить и вернуть в строй — обновленную версию вы можете скачать с нашего сайта.

С появлением Grep-стилей в составе абзацного стиля появилась возможность автоматического присвоения атрибута No Break. Для  этого сначала создается символьный стиль NoBreak, единственным параметром которого является установка атрибута No Break.

EndParagraphWords02

Далее задается Grep-стиль в параметрах абзацного стиля

EndParagraphWords03

Здесь .{10} — десять любых символов, включая пробелы, но исключая переводы каретки и концы абзацев;
$ — значок доллара указывает, что эти символы в конце абзаца.

Таким образом, в последней строке у вас будет как минимум 10 символов. Вместо десяти вы можете поставить другое значение, которое вам лучше подойдет. Этот метод описан на сайте http://fvdgeest-dtp.blogspot.com/

Во многих случаях приемлемые результаты получаются если в параметрах стиля установить запрет переноса последнего слова в абзаце (раздел Hiphenation, параметр Hiphenate Last Word). Но в коротких абзацах, имеющих длинное последнее слово, могут появиться дыры между словами или жидкие строки и необходимо ручное вмешательство.

Следует помнить, что после любой автоматизации вы должны внимательно просмотреть всю работу и вручную исправить огрехи.

Скачать обновленный скрипт EndParagraphWords (ZIP)

2 комментария »

  • alex081273:

    Скажите, а почему бы не использовать просто настройки переносов, параметр Before Last? В чем здесь «фишка»?

  • iv-mi:

    Before Last относится к числу символов в последнем слове строки, а не к последнему слову абзаца. Если ввести Before Last = 10, то получится оччень дырявый текст. Ну проще попробовать, нежели искать слова, чтобы объяснить.
    Опция использования grep для управления длиной последнего слова в абзаце позволяет добиться более аккуратного набора.

Оставить комментарий!

Вы должны быть в системе чтобы оставить комментарий.