Работа в системе LaTeX




Ручное управление разрывами строк - часть 2


Команда \\ допускает и необязательный аргумент: если в квадратных скобках указать какое-то расстояние (в TeX'овских единицах длины — то после оборванной строки будет оставлено это расстояние (по вертикали). Пример:

Разорвем строку\\[5pt] и оставим место.

Разорвем строку\\[5pt] и оставим место.

При использовании команды \\ с необязательным аргументом бывает удобно вместо расстояния в явном виде указать один из следующих параметров:

\smallskipamount маленький вертикальный пробел;
\medskipamount вертикальный пробел побольше;
\bigskipamount еще больше.

Точный размер этого пробела зависит от класса документа (и " классовых опций"); на с. 146 изображена величина соответствующих пробелов в стандартных классах со шрифтом кегля 11.5) ; если бы мы написали \\* или \\*[расстояние], то эффект был бы тот же, что и без звездочки, и к тому же было бы запрещено заканчивать страницу на оборванной строке.

У команды \linebreak с необязательным аргументом} также может присутствовать необязательный аргумент. При этом команда \linebreak[n] указывает, что в данном месте желателен переход на новую строку, причем

n
указывает "силу" этого желания (
n
должно быть целым числом от 0 до 4). Если
n=4
, то это полностью равносильно \linebreak без необязательного аргумента, если
n=0
, то это означает только, что строку в данном месте разрешается разорвать (так что применять эту команду с аргументом 0 между словами обычно бессмысленно); когда
n
возрастает от 1 до 3, команда \linebreak[n] "усиливает давление" на TeX'овский алгоритм верстки абзаца, делая для него разрыв в указанном месте все более выгодным, невзирая на возможное появление разреженных строк.

Есть также команда\nolinebreak, действующая противоположно; она также может принимать необязательный аргумент — целое число от 0 до 4. Будучи заданной с аргументом 4, эта команда запрещает разрыв строки в указанном месте. Когда ее необязательный аргумент возрастает от 1 до 3, TeX начинает рассматривать разрыв строки в указанном месте как все менее желательный, даже невзирая на то, что из-за отказа от этого разрыва могут появиться разреженные строки.Команда \nolinebreak[0] равносильна, как это ни странно, команде \linebreak[0]. Команду \nolinebreak надо давать непосредственно после слова и до пробела, иначе она не сработает.

Для простых приложений, о которых идет речь в этой лекции, команда \nolinebreak, как правило, не нужна: чтобы запретить разрыв, гораздо удобнее "неразрывный пробел". Команда \nolinebreak иногда бывает полезна при разработке собственных макроопределений, о чем сейчас говорить преждевременно.




Содержание  Назад  Вперед