Tex: подробное описание С. М. Львовский


Download 1.51 Mb.
Pdf ko'rish
bet115/143
Sana08.05.2023
Hajmi1.51 Mb.
#1444247
1   ...   111   112   113   114   115   116   117   118   ...   143
Bog'liq
LaTeX-Lvovsky

3.1. Растяжимые интервалы
До сих пор шла речь о важных, но непринципиальных отличиях между TEXовским \hbox’ом
и L
A
TEXовским \mbox’ом. Теперь поговорим о дополнительных возможностях, предоставляе
мых TEXовской командой.
Команда \hbox
«в чистом виде» создает блок, ширина которого равна естественной длине
текста, являющегося ее аргументом. Кроме этого, она может создавать блоки, любой задан

ной ширины. Для этого нужно сказать
\hbox to
hширинаi {текст}
Здесь
hширинаi должна быть выражена в воспринимаемых TEXом единицах длины: это мо
жет быть, например, 20pt, или 2.3cm, или, например, 0.12\textwidth
— параметр со значе
нием длины (возможно, с коэффициентом) тоже годится. Между to и обозначением ширины,
а также между обозначением ширины и открывающей фигурной скобкой могут быть пробе

лы
— TEX их проигнорирует.
2
Наконец, отсутствие backslash’а в слове to не является опе

чаткой: это не команда, а одно из
«ключевых слов» TEXа (подобно ключевым словам plus
и minus, с которыми мы вскоре снова встретимся, или width и height, с которыми мы уже
встречались в разделе, посвященном линейкам). Давайте опробуем эту новую возможность
команды \hbox:
Два
слова
\hbox to 3cm {dWA SLOWA}
Если Вы действительно опробовали этот пример на Вашем компьютере, то заметили, что
на экране появилось сообщение
Underfull \hbox
2
Пустых строк, однако, быть не должно.


VIII.3. КОМАНДА
\hbox
168
Дело в том, что пробел между словами
«Два»и «слова» не может растянуться настолько,
чтобы наш блок имел ширину три сантиметра; в ситуациях, когда пробел насильно заставля

ют растянуться больше, чем положено, возникает сообщение об Underfull’е, как это было
объяснено в разделе III.6.5Б.
Можно, однако, заставить TEX создать блок требуемой ширины «без скандала». Для это
го в том промежутке, который мы хотим растянуть, надо поставить команду \hfil:
Два слова
Два слова
Два слова
Два
слова
Два
слова
\hbox {dWA SLOWA}
\hbox {dWA \hfil SLOWA}
\hbox to 2cm {dWA \hfil SLOWA}
\hbox to 3cm {dWA \hfil SLOWA}
\hbox to 4cm {dWA \hfil SLOWA}
Если мы не указываем явно ширину блока, а предоставляем TEXу создать блок «есте
ственной
» ширины, то команда \hfil никакого действия не оказывает; если промежуток для
достижения требуемой ширины надо растянуть, то растяжение на требуемое расстояние бу

дет проведено в том месте, где стоит команда \hfil.
Если в аргументе команды \hbox присутствуют несколько \hfil’ов, то растяжение про

изойдет на месте каждой из этих команд, причем размер этого растяжения будет распреде

лен между \hfil’ами равномерно: если необходимо превысить естественную ширину блока
на 5 см, а в аргументе команды \hbox стоят два \hfil’а, то на месте каждого из них будет
добавлен пробел в 2,5 см. Вот пример с несколькими \hfil’ами:
Раз
два
три
\hbox to 4cm{rAZ \hfil DWA \hfil TRI}
В частности, если \hfil стоит справа или слева от текста, то весь текст будет прижат влево
или вправо, поскольку \hfil отмечает то единственное место, в котором интервалы могут
растягиваться; если же два \hfil’а стоят по обе стороны от текста, то текст внутри блока бу

дет центрирован, поскольку дополнительное растяжение поделится между двумя \hfil’ами
поровну:
Слева
Справа
В центре
\hbox to 0.7\textwidth
{sLEWA\hfil}
\hbox to 0.7\textwidth
{\hfil sPRAWA}
\hbox to 0.7\textwidth
{\hfil w CENTRE\hfil}
Можно считать, что на месте каждого \hfil’а в строку вставляется пружина; все эти пружи

ны имеют одинаковую жесткость, в свободном состоянии все они имеют нулевую ширину, и
все эти пружины могут сколь угодно широко растягиваться.
Наряду с \hfil существует команда \hfill, также задающая бесконечно растяжимые
пробелы, причем эта растяжимость
«в бесконечное число раз больше», чем у пробелов, зада
ваемых \hfil’ом. Если в аргументе команды \hbox присутствуют \hfil и \hfill совместно,
то все растяжения происходят только за счет
«более растяжимых» \hfill’ов:
Слово
Слово
Слово
\hbox to 4cm{\hfil sLOWO\hfil}
\hbox to 4cm{\hfill sLOWO\hfil}
\hbox to 4cm{\hfil sLOWO\hfill}


VIII.3. КОМАНДА
\hbox
169

Download 1.51 Mb.

Do'stlaringiz bilan baham:
1   ...   111   112   113   114   115   116   117   118   ...   143




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling