Журнал LinuxFormat - перейти на главную

LXF93:LaTeX

Материал из Linuxformat
Версия от 14:30, 25 ноября 2008; Crazy Rebel (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск


Компьютерные TeXнологии Учимся использовать культовую систему вёрстки

Содержание

Всё о таблицах

ЧАСТЬ 10 Таблица – один из самых сложных текстовых элементов. Почему? Давайте спросим у Евгения Балдина!
Классификация химических элементов, позволяющая выявить зависимость их различных свойств от атомной массы.
Таблица Менделеева — пожалуй, самая полезная из таблиц.

Таблица – это особая форма передачи информации: далеко не всякое содержание следует облекать в такую форму. Но для малых объёмов однородных значимых данных таблицы зачастую оказываются наилучшим способом представления. Давайте разберемся, что предлагает в этой области LaTeX.

Немного теории

Содержимое таблицы организуется в колонки (графы) и горизонтальные строки таким образом, что каждый элемент является составной частью и строки, и колонки. Таблица состоит из следующих основных элементов: нумерационного и тематического заголовков (номера таблицы и её названия), головки [В «издательском словаре-справочнике» А.Э. Мильчина утверждается, что попытка заменить этот термин по причине его «жаргонности» не удалась. ] (заголовочной части таблицы), хвоста (всей остальной части, кроме головки), боковика (первой слева графы таблицы) и прографки (хвостовой части таблицы без боковика).

Рис. 1

Рис. 1. Структура таблицы.

Заполняя таблицу текстовыми или цифровыми данными, полезно следовать некоторым правилам:

  • Выносить общие для каждого элемента графы данные в её заголовок, а общие для строки данные – в заголовок боковика.
  • По возможности, употреблять числа не более чем из четырёх значащих цифр. Более многозначные числа следует округлять. Общий множитель следует выносить в заголовок. То же самое нужно сделать и с единицами измерения.
  • Перед знаком, отделяющим целую часть числа от дробной, всегда должна быть цифра. То есть, 0.1 – это правильно, а .1 – нет.
  • Вместо отсутствующих данных проставлять многоточие …, Нет свед. и т.п. Если данных в принципе быть не может, то лучше отметить это с помощью тире: –.
  • Не следует использовать знаки, означающее «то же, что и предыдущее значение». Лучше повторить число.

Честно говоря, описание таблиц с помощью LaTeX-разметки может показаться не очень удобным. Действительно, когда данные идут в перемешку с управляющими структурами, результат может выглядеть не очень красиво. Спасает только то, что большие таблицы с однородной структурой можно создавать с помощью скрипта, а маленькие таблицы не представляют особой проблемы. Как правило, поиск и проверка данных отнимает куда больше времени, чем их оформление.

tаbbing

Если точно известны ширина столбцов, а таблица относительно простая, то можно воспользоваться окружением tаbbing.

Рис. 2

Рис. 2

Первая строчка устанавливает положение табуляторов с помощью команды \=. Команда \kill, завершающая управляющую строку, даёт понять текстовому процессору, что её не надо печатать. Далее идёт обычный текст, где переход к следующей табуляции осуществляется с помощью команды \>, а перевод строки завершается комбинацией \\. Всё просто – точно так же таблицы печатали с помощью обычной печатной машинки, только табуляция задавалась «железным», а не программным способом.

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

Внутри tabbing переопределяются некоторые стандартные команды LaTeX. Это, в частности, касается команд переноса ('\-) и акцентирования (\’ и \`). Для сохранения/воспроизводства текущей табуляции следует воспользоваться командами \pushtabs и \poptabs.

tabular и array

Самым популярным окружением для создания таблиц в LaTeX является tubular. Окружение array фактически полностью повторяет функционал tubular, но в отличие от последнего работает в математической моде – это полезно для создания матриц, которые, по своей сути, есть обычные таблицы.


Рис. 3

Рис. 3.

Данные делятся на ячейки с помощью символа «амперсанд» – &. Переход на следующую строку осуществляется стандартной командой переноса: \\. В качестве необязательного параметра ей можно указать дополнительный сдвиг по вертикали. Вертикальный размер каждой из строк автоматически выставляется в соответствии с высотой текста.

tabular создаёт единый объект – таблицу. Как и в случае картинок, таблицу удобно заключать в плавающее окружение table:

 \begin{table}[ht]
  \centering %центрируем таблицу
   \begin{tabular}[«позиционирование таблицы»]{«формат столбцов»}
     «тело таблицы»
   \end{tabular}
  \caption{«подпись»}\label{tab:metka}
 \end{table}

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

  • t – выравнивание по верхней строке, то есть верхняя строка таблицы будет расположена на одном уровне со строкой, в которой она была размещена,
  • c – выравнивание по центру,
  • b – выравнивание по нижней строке.

Ширина столбцов вычисляется автоматически по формату, который задаётся через обязательный аргумент окружения. Каждому из столбцов должна соответствовать своя буква:

  • l (left) – выравнивание по левому краю,
  • c (center) – выравнивание по центру,
  • r (right) – выравнивание по правому краю,
  • p{«ширина»} – создание колонки определённой ширины. В случае жёстко заданной длины слишком большой текст может разбиваться на несколько строк.

Если формат столбцов повторяется, то для сокращения записи можно воспользоваться следующей спецификацией:

*{n}{«формат столбца или столбцов»}

где n – число повторений. Это своеобразный цикл.

Рис. 4

Рис. 4

Разделительные линии между столбцами создаются с помощь вертикальной черты |. Две вертикальные линии || формируют двойной разграничитель. Горизонтальные линии создаются с помощью команды \hline. По аналогии с двойной вертикальной чертой, две команды формируют двойную горизонтальную линию. Инструкция @{} позволяет вставить между столбцами любой символ, указанный в качестве обязательного аргумента. При этом подавляются околостолбцовые промежутки, добавляемые автоматически. Это можно быть полезно в случае, если один столбец представляет из себя какую-то измеренную величину, а второй её ошибку – тогда вместо разделительной черты между ними лучше поставить знак ±.

Рис. 5

Рис. 5

Персональные инструменты
купить
подписаться
Яндекс.Метрика