Оформление текста в целом
Плавающие иллюстрации и таблицы
Простейшие средства
Чтобы разместить в тексте иллюстрацию, удобно воспользоваться окружением figure. Стоящий между \begin{figure} и \end{figure} текст автоматически размещается LaTeX'ом в таком месте, где он укладывается целиком (не переходя со страницы на страницу); это может быть не на "своей" странице, а позже. В последнем случае говорят, что иллюстрация "всплыла" на следующей странице; именно поэтому окружение figure называют еще " плавающая иллюстрация".
Команда \caption позволяет сделать подрисуночную подпись. Эта команда имеет один обязательный аргумент — текст подписи. На печати подпись состоит из слова, определенного командой \figurename (" Figure-", если не переопределять эту команду — см. выше), порядкового номера иллюстрации, присвоенного ей LaTeX'ом, и подписи, указанной в аргументе команды. Команду \caption можно давать в любом месте между \begin{figure} и \end{figure}: в соответствующем месте появится на печати и сгенерированная ею подпись. Разумно поэтому ставить команду \caption либо в конце окружения figure (тогда подпись будет размещена под иллюстрацией), либо в его начале (подпись появится над иллюстрацией).
Если команду \label поместить внутри окружения figure после команды \caption, то команда \ref ссылка на плавающую иллюстрацию} будет генерировать номер иллюстрации. Например, рис.4.2 получился так:
Например, рис.~\ref{void} на с.~\pageref{void}... ... \begin{figure} \vspace*{2.5cm} \caption{Белый квадрат на белом фоне}\label{void} \end{figure}
Внутри одного окружения figure может быть несколько команд \caption, и каждую из них можно пометить своей командой \label. Подчеркнем, что само по себе окружение figure номера рисунка не создает.
На подписи к рис.4.2 после номера стоит точка. К сожалению, согласно LaTeX'овскому стандарту в этом месте ставится не точка, а двоеточие, что в русском тексте выглядит неудачно. В "Модификация стандартных классов" объясняется, как с этим можно бороться.
У окружения figure предусмотрен необязательный аргумент, с помощью которого можно высказать LaTeX'у свои пожелания по поводу размещения иллюстрации в тексте. Именно, после \begin{figure} (без пробела) можно поместить в квадратных скобках одну или несколько из следующих четырех букв, имеющих такие значения:
t | разместить иллюстрацию в верхней части страницы; |
b | разместить иллюстрацию в нижней части страницы; |
p | разместить иллюстрацию на отдельной странице, целиком состоящей из "плавающих" иллюстраций (или таблиц — см. ниже); |
h | разместить иллюстрацию прямо там, где она встретилась в исходном тексте, не перенося ее никуда. |
Если в квадратных скобках стоит несколько букв, это значит, что вы согласны на любой из предусматриваемых этими буквами вариантов. Если окружение figure задано без необязательного аргумента, это равносильно записи
\begin{figure}[tbp]
При наборе текста в две колонки полезно использовать не только само окружение figure, но и его вариант "со звездочкой": если сказать
\begin{figure*}
то при наборе текста в одну колонку это не будет ничем отличаться от окружения figure без звездочки, а при наборе текста в две колонки создаст иллюстрацию шириной в целую страницу (без звездочки получилось бы шириной в одну колонку). Если окружение открывается командой \begin{figure*}, то и закрываться оно должно командой со звездочкой.
Если при наборе в две колонки задать окружение figure (без звездочки) с необязательным аргументом p, то для печати иллюстраций будет выделена не отдельная страница, но отдельная колонка. При подключении стилевого пакета multicol пользоваться окружениями со звездочкой {figure*} и {table*} (см. ниже) нельзя.
Окружение {table} определяет " плавающие таблицы". Все свойства этого окружения дословно совпадают с соответствующими свойствами окружения {figure}, за двумя исключениями: во-первых, подпись, генерируемая командой \caption, начинается со слова, определенного в команде \tablename, и переопределять, при необходимости, надо именно эту команду, и во-вторых, таблицы нумеруются независимо от иллюстраций. Кстати, подпись к таблице принято делать не снизу, как к иллюстрации, а сверху. Окружение {table*} при наборе текста в две колонки определяет таблицы шириной в целую страницу.
В документе можно, при желании, получить автоматически сгенерированные списки иллюстраций и/или таблиц. Для этого используются команды \listoffigures (для иллюстраций) и \listoftables (для таблиц). Их работа аналогична команде \tableofcontents, генерирующей оглавление: материал для этих списков собирается в специальные файлы с расширениями lof (для иллюстраций) и lot (для таблиц); при каждом запуске LaTeX'а информация, записанная в этих таблицах, относится к предыдущему запуску, так что в самом конце может понадобиться запустить LaTeX лишний раз; наконец, команда \caption может принимать необязательный аргумент — вариант подписи под иллюстрацией или таблицей, предназначенный для включения в список иллюстраций или таблиц соответственно. Этот необязательный аргумент записывается (в квадратных скобках, как обычно) перед обязательным.
Как окружение {figure} не рисует картинок, так и окружение {table} только размещает таблицу на страницах документа, но не создает ее текста. Как набирать таблицы в LaTeX'е, мы расскажем в "Печать текста с выравниванием" .
В разд. "Модификация стандартных классов" мы расскажем о том, как можно модифицировать оформление плавающих иллюстраций и таблиц.