Блоки из абзацев
Если необходимо создать блок, в котором размещается сверстанный TeX'ом абзац текста, то можно воспользоваться командой \parbox. У этой команды два обязательных аргумента: первый — длина строк в получаемом абзаце, второй — собственно текст. Например, такой текст
В строку\qquad \parbox{4cm}{вставили целый абзац текста, сверстанного по всем TeX'овским правилам. После этого продолжается}\qquad прерванная строка. |
Как видите, базисная линия блока, создаваемого командой \parbox, находится в точности посредине текста. Поэтому команду \parbox удобно использовать для включения больших фрагментов текста в математические формулы. Например, формула
получается из такого исходного текста:
$$ \int_a^b f'(x)\,dx=f(b)-f(a)\qquad \parbox{4cm}{для всех функций f, производная которых интегрируема по Риману} $$Если дать команду \parbox с необязательным аргументом} с необязательным аргументом, то создаваемый ею блок можно расположить относительно строки и по-иному: чтобы вровень с остальной строкой шла самая верхняя строка абзаца (для этого нужен аргумент t) или самая нижняя (аргумент b); можно также указать аргумент c — тогда блок будет расположен по центру, так же, как если бы необязательного аргумента вообще не было. Необязательный аргумент у этой команды должен идти перед обязательными.
Во втором обязательном аргументе команды \parbox, задающем текст, может присутствовать всё то же, что в обычном тексте, в том числе команды для вертикальных пробелов наподобие \vspace, пустые строки, разделяющие абзацы, выключные формулы и т.п. Абзацы, создаваемые командой \parbox, по умолчанию делаются без абзацного отступа и в режиме \sloppy. Если вы хотите чего-то другого, можно прямо внутри аргумента команды \parbox установить нужное вам значение абзацного отступа, параметра \tolerance и т.п.
Можно также указать LaTeX'у высоту, которую должен иметь блок, полученный в результате применения команды \parbox. Для этого используется второй необязательный аргумент, идущий непосредственно после первого.
Наряду с явным указанием размера, можно воспользоваться командой \height, обозначающей " естественную" высоту текста, а также командой \totalheight (высота плюс глубина).
Наконец, в команде \parbox можно указать, как именно должен быть расположен текст внутри блока. Для этого используется третий необязательный аргумент, следующий непосредственно после второго. Этот аргумент — буква t, b, c или s. Буква t означает " сверху", b — "снизу", c — "по центру". Если третий необязательный аргумент не указан, то по умолчанию считается, что он совпадает с первым. Если же третьим необязательным аргументом является s, это означает, что текст будет растянут или ужат в соответствии с размером, указанным во втором необязательном аргументе. Если вы не позаботитесь о специальных командах, обеспечивающих такую растяжимость или сжимаемость, то получите сообщение об Overfullе или Underfullе.
В следующем примере блоки, созданные командой \parbox, для наглядности взяты в рамку (с помощью \fbox):
\fbox{% \parbox[b][1.3\height]{2cm}{% Мы едем, едем, едем в далекие края.}}\qquad \fbox{% \parbox[t][1.3\height]{2cm}{% Мы едем, едем, едем в далекие края.}} Команды \height и \totalheight, так же как и \depth, можно использовать только в необязательном аргументе команды \parbox (а также \framebox или \makebox).
Наряду с \parbox, существует еще один способ создать блок из абзацев. Именно, существует окружение {minipage} (" министраница"), генерирующее блок из текста, расположенного внутри этого окружения; блок состоит из абзацев, ширина которых задается в обязательном аргументе окружения {minipage} (так же, как в команде \parbox); перед обязательным аргументом этого окружения может стоять необязательный: буква t, b или c, причем смысл этого аргумента опять-таки такой же, как в команде \parbox. Основное отличие minipage от \parbox в том, что к тексту внутри этого окружения можно делать сноски с помощью команды \footnote, причем текст сноски появляется не внизу страницы, а внизу блока, генерируемого окружением minipage.При наборе книги, которую вы читаете, это окружение использовалось для печати примеров.