TeX формирует страницы, выстраивая их из блоков — боксов. Элементарным боксом является каждая буква. Буква приклеивается к другим буквам, формируя слово, которое, в свою очередь, склеивается с другими словами. Для этого используется эластичный "клей", способный растягиваться или сжиматься так, чтобы в точности заполнить строку. Таким образом, TeX работает только с боксами и клеем.
Боксом может быть не только буква. Вы можете поместить в бокс практически все, что угодно, например, другие боксы. Каждый бокс при этом обрабатывается LaTeX'ом так, как если бы это была отдельная буква.
Вы можете упаковать любой абзац в бокс с помощью команды:
\parbox[pos][height][contentpos]{width}{text}
или окружения
\begin{minipage}[pos][height][contentpos]{width}
text
\end{minipage}
Основное различие между minipage
и \parbox
заключается в том, что внутри \parbox нельзя использовать команды и окружения, а внутри minipage доступны почти все команды (не допускаются плавающие объекты и команда \marginpar
). В полном соответствии со своим названием окружение minipage
создает страницу внутри страницы, которая может содержать свои собственные сноски, абзацы, а также окружения array
, tabular
и multicols
. Кроме того, minipage
можно использовать внутри плавающих объектов, создаваемых окружениями figure
и table
, добиваясь весьма интересных эффектов.
Параметр pos
может принимать одно из трех значений — c
, t
или b
, и управляет вертикальным выравниванием блока по отношению к базовой линии окружающего текста — по центру, по верхнему и по нижнему краю соответственно. height
определяет высоту, а width
— ширину блока. Параметр contentpos
управляет расположением содержимого по вертикали внутри блока, и принимает уже знакомые значения c
, t
и b
.
Чаще всего minipage
используется в сокращенном варианте:
\begin{minipage}[pos]{width}
text
\end{minipage}
Разница между обоими вариантами видна из следующих примеров. Для наглядности, каждый minipage
дополнительно помещен в "бокс с границей" — \fbox
Сокращенный вариант minipage
Чрезвычайно полезным инструментом макетирования страниц является окружение \texttt{minipage}.
\fbox{
\begin{minipage}[t]{8cm}
Оно представляет собой миниатюрный вариант страницы, который может содержать свои собственные сноски, абзацы, а также окружения \texttt{array}, \texttt{tabular} и \texttt{multicols}. \end{minipage}
}
\texttt{minipage} можно использовать внутри плавающих объектов, создаваемых окружениями \texttt{figure} и \texttt{table}, добиваясь весьма интересных эффектов.
дает
Полный вариант
Чрезвычайно полезным инструментом макетирования страниц является окружение \texttt{minipage}.
\fbox{
\begin{minipage}[t][5cm][c]{8cm}
Оно представляет собой миниатюрный вариант страницы, который может содержать свои собственные сноски, абзацы, а также окружения \texttt{array}, \texttt{tabular} и \texttt{multicols}.
\end{minipage}
}
\texttt{minipage} можно использовать внутри плавающих объектов, создаваемых окружениями \texttt{figure} и \texttt{table}, добиваясь весьма интересных эффектов.
дает
Примеры использования minipage
Две картинки с подписями, размещенные в одной строке:
\begin{figure}[h!]
\begin{minipage}[b]{0.45\textwidth}
\includegraphics[width=\textwidth]{pic1}
\center{Константин Крыжицкий<<Деревня на берегу речки>>}
\end{minipage}
\begin{minipage}[b]{0.45\textwidth}
\includegraphics[width=\textwidth]{pic2}
\center{Андрей Шильдер<<Ручей в лесу>>}
\end{minipage}
\end{figure}
Картинка в одной строке с текстом:
\begin{minipage}{0.5\textwidth}
\includegraphics[width=\textwidth]{pic1}
\end{minipage}
\begin{minipage}{0.5\textwidth}
текст рядом с картинкой
текст рядом с картинкой
текст рядом с картинкой
текст рядом с картинкой
текст рядом с картинкой \vspace{2.5cm}
\end{minipage}
Матрица из картинок:
\begin{figure}[h]
\begin{minipage}[h]{0.45\linewidth}
\center{\includegraphics[width=\textwidth]{pic1} а)}
\end{minipage}
\hfill
\begin{minipage}[h]{0.45\linewidth}
\center{\includegraphics[width=\textwidth]{pic2} б)}
\end{minipage}
\vfill
\begin{minipage}[h]{0.45\linewidth}
\center{\includegraphics[width=\textwidth]{pic2} в)}
\end{minipage}
\hfill
\begin{minipage}[h]{0.45\textwidth}
\center{\includegraphics[width=\textwidth]{pic1} г)}
\end{minipage}
\end{figure}
Окружение figure
"стягивает" картинки, иначе команда \vfill
раздвинула бы их в пределах страницы. Вы можете проверить это, убрав figure
.
Две таблицы в одной строке:
\begin{minipage}{0.2\textwidth}
\begin{tabular}{|c|c|c|}
\hline
1 & 2 & 3 \\
\hline
4 & 5 & 6 \\
\hline
7 & 8 & 9 \\
\hline
\end{tabular}
\end{minipage}
\begin{minipage}{0.2\textwidth}
\begin{tabular}{c|c|c}
9 & 8 & 7 \\
\hline
6 & 5 & 4 \\
\hline
3 & 2 & 1 \\
\end{tabular}
\end{minipage}
Комментарии
comments powered by Disqus