Метки

,

Задача: Ценрировать текст в ячейке таблицы (окружение tabular) по вертикали.

Решение:
Используем пакет multirow. Имеется два случая.

  1. Необходимо объединить несколько ячеек таблицы. Для этого используется команда \multirow{row}*{text}, которая создает ячейку, содержащую text и объединяющую row строк.
    Существует так же вариант команды \multirow{row}{width}*{text}, где задается ширина width ячейки.
  2. Нужно центрировать текст по вертикали в одной строке. Воспользуемся опцией m{width} по центру которой необходимо выровнять всю строку таблицы.

Пример: Код, идущий ниже, создает две таблицы. В первой объединяются ячейки по вертикали, во второй — текст в них центрируется по наиболее высокой ячейке.

\documentclass[a4paper, 12pt]{article}
\usepackage{multirow}
\usepackage{array}\begin{document}
We want to centre text in table cells:
\begin{center}
\begin{tabular}{clc}
\hline
Object & Behaviours & Examples \\
\hline
\multirow{3}*{Metals} & conduct current & Fe \\
\cline{2-3}
& solid & Cu \\
\cline{2-3}
& strong & Al \\
\hline
\multirow{2}*{Dielectrics} & may be gaseous & Air \\
\cline{2-3}
& may be solid & Plastics \\
\hline
\end{tabular}
\end{center}
\begin{center}
\begin{tabular}{cm{3cm}c}
\hline
Object & Behaviours & Examples \\
\hline
Metals & Metals can be shine and strong. It conducts current well. & Al \\
\hline
Semiconductors & Conductiviti of semiconductors increase with increasing of temperature. & Ge \\
\hline
\end{tabular}
\end{center}
We can do it!
\end{document}

Источник: Lapo Filippo Mori, Tables in LATEX2(epsilon): Packages and Methods, The PracTEX Journal, 2007, No. 1.

Реклама