- •Переносы и выключка
- •Принцип действия переноса и выключки
- •Познаковые расчеты
- •Проблемы построчных переносов и выключки
- •Перенос и выключка с учетом нескольких строк
- •Диапазоны многострочных переноса и выключки
- •Места разрыва строк
- •Регулирование пробелов
- •Регулирование переносов
- •Зоны переноса
- •Способы переноса
- •Виды дефисов
- •Стили переносов
- •Добавление в словарь переносов
- •Влияние формата полосы набора
- •Межсловные пробелы и флаговый набор
- •Межсловные пробелы и выключка по формату
- •Диапазоны изменения апрошей
- •Апроши и принудительная выключка
- •Приемы разрядки и проблемы
- •Изменение ширин знаков в процессе выключки
- •Проверка установок функции переносов и выключки
- •Установки по умолчанию
- •Выявление и устранение проблем верстки
- •Разреженные или сжатые строки
- •Отладка переносов
- •Исправление пробелов
- •Проблемы «цвета» абзаца
- •Висячие строки
- •Спасение «вдовы»
- •Помощь «сироте»
- •Вертикальное выравнивание
- •Вертикальное выравнивание текстового блока
- •Коридоры в тексте
- •Эстетика рваного края
Проблемы построчных переносов и выключки
Большинство программ верстки осуществляет функцию переноса и выключки построчно, и когда завершает работу с одной строкой, тут же забывает о ней и начинает на следующей строке все сызнова. Гипотетическая программа, которая описана в предыдущем разделе, работает примерно так. Проблема такого подхода состоит в том, что часто строка не может быть размещена оптимально в пределах доступного пространства. В таком случае у программы единственный выход: нарушить правила, набирая строку слишком разреженно или слишком плотно. Чаще — разреженно, чем плотно.
Программа может также сверстать одну строку, используя только минимальные значения пробе лов (таким образом, получая относительно плотную строку), а следующую, используя максимальные значения пробелов (создавая относительно разреженную строку). Поскольку программа не принимает во внимание то, что делала на предыдущей строке, она и не замечает контраста строк. Однородные строки трудно получить, когда каждая строка набирается независимо от других.
У вас могут возникнуть трудности с последней строкой абзаца, если эта строка коротка, иногда слишком коротка для того, чтобы перекрыть отступ в последующем абзаце и устранить неприглядный пробел. Сходным образом вы можете запретить программе перенос последнего слова абзаца (при условии, что это допусти мо), но она будет вынуждена сделать этот перенос для того, чтобы остаться в пределах предписанных величин пробелов.
Единственный способ разрешения этой дилеммы (кроме решения проблем вручную) — это использование программы, у которой функция переносов и выключки учитывает одновременно несколько строк.
Перенос и выключка с учетом нескольких строк
Большинство программ использует построчные перенос и выключку, потому что это легче и быстрее, чем обрабатывать несколько строк одновременно. В после днем случае перенос и выключка становятся необычайно сложным процессом. Для того чтобы достичь оптимальных пробелов во всем абзаце, программа выполняет переносы и выключку, постоянно оглядываясь, не превышена ли плотность данной строки по сравнению со сверстанными строками.
Если программа, следуя правилам переноса и выключки, попадает в тупик, например, получает текущую строку несколько разреженнее или плотнее других, то она возвращается назад, чтобы изменить значения пробелов в предыдущих строках, переверстывая их, и тем самым устранить проблему, возникшую в текущей строке.
Такое движение взад-вперед требует значительного времени и компьютерных ресурсов, зато и результат гораздо лучше, чем у построчных переноса и выключки. Нагрузку компьютера можно уменьшить, регулируя диапазон строк, которые про грамма просматривает одновременно. Диапазон обрабатываемых строк все время меняется: например, получив значение 20 строк, программа работает с текущей строкой плюс 19 предыдущих строк. Другими словами, она не обрабатывает дискретные блоки по 20 строк, а каждый раз усредняет относительно текущей строки значения пробелов в последних 20 строках, которые уже сверстаны.
Пока немногие программы предлагают описанную возможность, но результат этой технологии столь великолепен, что, возможно, она станет стандартной во всех профессиональных наборных системах и программах верстки.