Если же абзац достаточно длинный,
Если же абзац достаточно длинный, то у TeX'овского алгоритма обычно хватает гибкости, чтобы достигнуть этой цели.
Можно присвоить параметру \looseness и значение
; в этом случае TeX будет стараться сделать абзац короче на две строки (если не выйдет, то хоть на одну, а если и это не выходит, то оставит все как есть). Можно также присваивать \looseness положительные значения — в этом случае TeX будет стараться делать абзацы, которые содержат больше строк, нежели оптимальные.
По умолчанию значение параметра \looseness равно, естественно, нулю, и по окончании верстки каждого абзаца этот параметр также устанавливается в нуль. Тем самым нет нужды заботиться о том, чтобы значение \looseness менялось внутри группы, и бессмысленно присваивать этому параметру какое-то значение в преамбуле (оно забудется после первого же абзаца текста). Для каждого абзаца, для которого это вообще нужно, значение \looseness надо устанавливать заново.
Борьба с последней строкой.
Нехорошо, когда последняя строка абзаца слишком коротка (например, короче, чем абзацный отступ следующего абзаца). Чтобы бороться с этим, можно использовать те средства, с которыми мы уже знакомы. Если, например, последняя короткая строка представляет собой обрубок слова, завершающего абзац, то можно либо запретить переносы в этом слове, взяв его в \mbox , либо сказать перед этим словом \linebreak, либо, если это слово длинное, указать в нем место для переносов в явном виде (с помощью команды \-\,) только в начале (в надежде, что поджаться на меньшее расстояние TeX'у будет легче). Другой вариант — сказать \looseness=-1 перед пустой строкой, завершающей абзац: если TeX'у удастся сделать абзац на строку короче, то вряд ли завершающая строка разбитого по-новому абзаца будет короткой.
Разумеется, чудес не бывает: эти рецепты могут подействовать, если абзац достаточно длинен, а не состоит из пары строк.
Другой нежелательный эффект возникает, когда длина последней строки абзаца лишь чуть-чуть меньше, чем ширина полосы. В этом случае разумно довести последнюю строку до края.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий