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


Download 1.51 Mb.
Pdf ko'rish
bet120/143
Sana08.05.2023
Hajmi1.51 Mb.
#1444247
1   ...   116   117   118   119   120   121   122   123   ...   143
Bog'liq
LaTeX-Lvovsky

4. Команда \vbox
Теперь рассмотрим вторую основную TEXовскую команду для генерации блоков — коман
ду \vbox. Эта команда создает блок, обрабатывая текст в вертикальном режиме. Вот пер

вый пример:
Слово
Еще слово
\vbox{\hbox{sLOWO}
\hbox{e]E SLOWO}}
Получаемый блок имеет вид:
Слово

Еще слово

=

Слово
Еще слово

Как видите, блоки, создаваемые \hbox’ами, ставятся один под другим таким образом, чтобы
их точки отсчета лежали на одной вертикальной прямой.
Прежде, чем идти дальше, обсудим, чт ´о может содержаться в аргументе команды \vbox.
Там могут присутствовать любые TEXовские команды, допустимые между абзацами (то есть
в вертикальном режиме): команды \vspace, команды смены шрифта, присваивания значений
различным параметрам, команды \newcommand и \renewcommand и т. п. Что же касается ко

манд, которым соответствует что-либо на печати, то мы будем считать, что из них в аргумен

те \vbox возможны только TEXовские команды \hbox, \vbox и \hrule, а также \copy, о ко
торой пойдет речь позже. В частности, недопустим ни текст, ни L
A
TEXовские команды \mbox,
\parbox
, \rule и т. п. Если Вам требуется воспользоваться возможностями таких команд,
«прячьте» их в \hbox, например, так:
\hbox{\raisebox{1pt}[2em][3em]{...}}
На самом деле в аргументе команды \vbox может находиться и обычный текст; при появлении
первой же буквы или, скажем, команды \mbox или другой L
A
TEXовской команды для генерации блоков
TEX переходит в горизонтальный режим, который продолжается до команды, завершающей абзац
(\par или пустой строки). Мы не будем вдаваться в детали; для тех приложений, которые мы имеем в
виду, достаточно использовать команду \vbox так, как было предписано выше.
Когда TEX при выполнении команды \vbox составляет блоки друг с другом, он распола
гает их так, чтобы их базисные линии были, по возможности, на равных расстояниях друг
от дружки, так что обычно между блоками будет присутствовать дополнительный пробел.
С другой стороны, линейки, созданные командой \hrule, приставляются к блокам без до

полнительного пробела. Чтобы при этом линейка не оказалась вплотную к тексту, удобно в
соответствующий блок вставить \strut. Следующий пример призван пояснить сказанное:


VIII.5. БЛОКОВЫЕ ПЕРЕМЕННЫЕ
175
Неудачно:
Два слова
Лучше так:
Два слова
nEUDAˆNO:\\
\vbox{\hbox{dWA SLOWA}
\hrule}
lUˆ[E TAK:\\
\vbox{\hbox{\strut dWA SLOWA}
\hrule}
Как обычно, \vbox посреди абзаца ведет себя просто как большая буква. Обратите также
внимание, что мы не пытались убрать лишний пробел между \hbox и \hrule: в вертикальном
режиме пробелы никакого влияния на текст не оказывают.
Вот еще пример, когда с помощью комбинации блоков и линеек текст берется в рамочку:
Текст в рамке
\vbox{\hrule
\hbox{\vrule\,\strut
tEKST W RAMKE\,\vrule}
\hrule}
По-прежнему мы используем \strut, чтобы горизонтальные линейки не подходили слишком
близко к тексту.

Download 1.51 Mb.

Do'stlaringiz bilan baham:
1   ...   116   117   118   119   120   121   122   123   ...   143




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