Date Редакция Категория comp Теги LaTeX

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}, добиваясь весьма интересных эффектов.

дает

mp01.png

Полный вариант

Чрезвычайно полезным инструментом макетирования страниц является окружение \texttt{minipage}.
\fbox{
\begin{minipage}[t][5cm][c]{8cm}
Оно представляет собой миниатюрный вариант страницы, который может содержать свои собственные сноски, абзацы, а также окружения \texttt{array}, \texttt{tabular} и \texttt{multicols}. 
\end{minipage}
}
\texttt{minipage} можно использовать внутри плавающих объектов, создаваемых окружениями \texttt{figure} и \texttt{table}, добиваясь весьма интересных эффектов.

дает

mp02.png

Примеры использования 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}

mp03.png

Картинка в одной строке с текстом:

\begin{minipage}{0.5\textwidth}
\includegraphics[width=\textwidth]{pic1}
\end{minipage}
\begin{minipage}{0.5\textwidth}
текст рядом с картинкой
текст рядом с картинкой
текст рядом с картинкой
текст рядом с картинкой
текст рядом с картинкой \vspace{2.5cm}
\end{minipage}

mp04.png

Матрица из картинок:

\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}

mp05.png

Окружение 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}

mp06.png

Скачать pic1.png, pic2.png.



Комментарии

comments powered by Disqus