Spec-Zone.ru › LaTeX

Табличный

Синопсис:

\begin{tabular}[pos]{cols}
  column 1 entry  &column 2 entry  ...  &column n entry \\
  ...
\end{tabular}

или

\begin{tabular*}{width}[pos]{cols}
  column 1 entry  &column 2 entry  ...  &column n entry \\
  ...
\end{tabular*}

Создаёт таблицу, прямоугольную область, состоящую из последовательности горизонтальных строк. Каждая строка состоит из элементов, выровненных по вертикали в столбцах. Это иллюстрирует многие возможности.

\begin{tabular}{l|l}
  \textit{Player name}  &\textit{Career home runs}  \\ 
  \hline
  Hank Aaron  &755 \\
  Babe Ruth   &714
\end{tabular}

Выходные данные будут содержать два столбца с выравниванием влево, разделённые вертикальной чертой. Это задаётся в аргументе tabular {l|l}. Разделите записи в разных столбцах амперсандом, &. Конец каждой строки отмечается двойным обратным слэшем, \\. Разделите строки горизонтальной линией после двойного обратного слэша, с помощью \hline. После последней строки \\ является необязательным, если не следует команда \hline, чтобы поставить линию под таблицей.

Обязательные и необязательные аргументы к tabular состоят из:

pos

Необязательно. Задаёт вертикальное положение таблицы. По умолчанию таблица выравнивается так, что её вертикальный центр совпадает с базовой линией окружающего текста. Существуют два других возможных выравнивания: t выравнивает таблицу, так что её верхняя строка совпадает с базовой линией окружающего текста, и b выравнивает по нижней строке.

Это имеет эффект только при наличии другого текста. В распространённом случае, когда tabular находится в center окружении, этот параметр не имеет значения.

cols

Обязательно. Задаёт форматирование столбцов. Оно состоит из последовательности следующих спецификаторов, соответствующих типам столбцов и межстрочного материала.

l

Столбец с элементами, выровненными по левому краю.

r

Столбец с элементами, выровненными по правому краю.

c

Столбец с отцентрованными элементами.

|

Вертикальная линия полной высоты и глубины окружения.

@{text or space}

Вставить текст или пробел в этом месте в каждой строке. Материал текст или пробел форматируется в режиме LR. Этот текст хрупкий (см. \protect).

Если между двумя столбцами нет выражения с @, то классы LaTeX book, article, и report разместят с каждой стороны каждого столбца пробел длиной \tabcolsep, который по умолчанию равен 6pt. То есть, по умолчанию смежные столбцы разделены 12pt (поэтому \tabcolsep неудачно названо, так как это только половина разделителя между столбцами таблицы). Кроме того, пробел 6pt также ставится перед первым столбцом и после последнего, если вы не поставили @{...} или |.

Если вы переопределите стандартное значение и используете выражение с @, то LaTeX не вставит \tabcolsep, поэтому вы должны сами вставить необходимый пробел, как в @{\hspace{1em}}.

Пустое выражение @{} удалит пробел. В частности, иногда вам нужно удалить пробел перед первым столбцом или после последнего, как в приведённом ниже примере, где строки таблицы должны находиться на левой границе.

\begin{flushleft}
  \begin{tabular}{@{}l}
    ...
  \end{tabular}
\end{flushleft}

Следующий пример показывает текст, десятичную точку между столбцами, организованную так, чтобы числа в таблице выравнивались по ней.

\begin{tabular}{r@{$.$}l}
  $3$ &$14$  \\
  $9$ &$80665$
\end{tabular}

Команда \extracolsep{wd} в выражении с @ вызывает дополнительный пробел шириной wd слева от всех последующих столбцов, пока это не будет отменено другой командой \extracolsep. В отличие от обычного межстрочного пробела, этот дополнительный пробел не подавляется выражением с @. Команда \extracolsep может использоваться только в выражении с @ в аргументе cols. Ниже LaTeX вставляет правильное количество межстрочного пробела, чтобы вся таблица имела ширину 4 дюйма.

\begin{tabular*}{4in}{l@{\extracolsep{\fill}}l}
  Seven times down, eight times up \ldots 
  &such is life!
\end{tabular*}

Для вставки команд, которые автоматически выполняются перед определённым столбцом, загрузите пакет array и используйте спецификатор >{...}.

p{wd}

Каждый элемент в столбце форматируется в parbox шириной wd, как если бы он был аргументом команды \parbox[t]{wd}{...}.

Перевод строки двойной обратный слэш \\ не может появиться в элементе, кроме как внутри среды, подобной minipage, array, или tabular, или внутри явного \parbox, или в области объявления \centering, \raggedright, или \raggedleft (при использовании в p столбце эти объявления должны быть внутри фигурных скобок, как в {\centering .. \\ ..}). В противном случае LaTeX неправильно интерпретирует двойной обратный слэш как завершающий строку таблицы. Вместо этого, чтобы получить перевод строки, используйте \newline (см. \newline).

*{num}{cols}

Эквивалентно num копиям cols, где num — положительное целое число, а cols — список спецификаторов. Таким образом, спецификатор \begin{tabular}{|*{3}{l|r}|} эквивалентен спецификатору \begin{tabular}{|l|rl|rl|r|}. Обратите внимание, что cols может содержать другое выражение с *.

width

Требуется для tabular*, недопустимо для tabular. Задаёт ширину окружения tabular*. Межстрочное пространство должно быть эластичным, как в @{\extracolsep{\fill}}, чтобы таблица могла растягиваться или сжиматься до указанной ширины, в противном случае вы, вероятно, получите предупреждение Underfull \hbox (badness 10000) in alignment ....

Параметры, которые контролируют форматирование:

\arrayrulewidth ¶

Длина, которая соответствует толщине линии, создаваемой |, \hline, и \vline в окружениях tabular и array. По умолчанию ‘.4pt’. Изменяйте как в \setlength{\arrayrulewidth}{0.8pt}.

\arraystretch ¶

Множитель, на который умножается расстояние между строками в окружениях tabular и array. По умолчанию ‘1’, без масштабирования. Изменяйте как в \renewcommand{\arraystretch}{1.2}.

\doublerulesep ¶

Длина, которая соответствует расстоянию между вертикальными линиями, создаваемыми спецификатором ||. По умолчанию ‘2pt’.

\tabcolsep ¶

Длина, которая составляет половину расстояния между столбцами. По умолчанию ‘6pt’. Изменяйте с помощью \setlength.

Следующие команды могут использоваться внутри тела окружения tabular, первые две внутри записи, а последние две между строками:

  • \multicolumn
  • \vline
  • \cline
  • \hline

© 2007–2018 Karl Berry
Public Domain Software
http://latexref.xyz/tabular.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API