Оформление многостраничных таблиц в LaTeX (пакет longtable)

Почему стандартное окружение tabular не переносится

Стандартное окружение \begin{table} ... \begin{tabular} в LaTeX является неделимым «плавающим объектом» (float). Если число строк в таблице превышает высоту печатного листа, таблица не разрывается, а просто срезается нижним краем страницы и уходит за пределы листа бумаги.

Для создания таблиц произвольной длины (на 2, 5 или 20 страниц) используется специализированный пакет longtable. Он не оборачивается в плавающее окружение table, а вставляется напрямую в текст документа.

Таблица на несколько страниц latex longtable: базовый шаблон

Подключите пакет: \usepackage{longtable}. Полноценная таблица на несколько страниц latex longtable разделяется на четыре служебные зоны заголовков и подвалов:

LaTeX
\begin{longtable}{|c|p{8cm}|r|}
    % 1. Шапка на САМОЙ ПЕРВОЙ странице
    \caption{Экспериментальные данные измерений}\label{tab:measurements} \\
    \hline
    \textbf{№} & \textbf{Наименование образца} & \textbf{Масса, г} \\
    \hline
    \endfirsthead

    % 2. Шапка на ВСЕХ ПОСЛЕДУЮЩИХ страницах (по ГОСТ)
    \multicolumn{3}{r}{\textit{Продолжение таблицы \ref{tab:measurements}}} \\
    \hline
    \textbf{№} & \textbf{Наименование образца} & \textbf{Масса, г} \\
    \hline
    \endhead

    % 3. Подвал на промежуточных страницах
    \hline
    \multicolumn{3}{|r|}{\small Продолжение на следующей странице...} \\
    \hline
    \endfoot

    % 4. Завершающий подвал на последней странице
    \hline
    \endlastfoot

    % ТЕЛО ТАБЛИЦЫ
    1 & Образец кремниевой пластины марки А-1 & 14.52 \\ \hline
    2 & Образец кремниевой пластины марки А-2 & 14.88 \\ \hline
    % ... сотни строк данных ...
\end{longtable}

Специальные блоки шапок и подвалов longtable

Ключевая особенность синтаксиса longtable заключается в предварительном объявлении шапок перед строками данных:

  • \endfirsthead — фиксирует шапку, которая отобразится исключительно в начале таблицы на первом листе.
  • \endhead — дублирует шапку на каждом новом листе, куда продолжается таблица.
  • \endfoot — нижняя строка промежуточных листов.
  • \endlastfoot — финал таблицы (закрывающая горизонтальная черта \hline).

Перенос таблицы на следующий лист latex: подписи по ГОСТ

Российский ГОСТ 7.32-2017 строго регламентирует, как должен выглядеть перенос таблицы на следующий лист latex (подробный разбор правил смотрите в статье о переносе таблицы на следующий лист в дипломе):

  • На первом листе над таблицей пишется полное название: «Таблица 1 — Название».
  • На всех следующих листах перед повторной шапкой выравнивается по правому краю надпись «Продолжение таблицы 1».
  • Использование связки \multicolumn{N}{r}{\textit{Продолжение таблицы \ref{...}}} в блоке \endhead полностью закрывает это требование нормоконтроля в автоматическом режиме.

Ширина колонок и переносы строк внутри ячеек

Чтобы текст внутри ячеек автоматически переносился по словам, используйте колонки с фиксированной шириной p{ширина} (например, p{6cm}) вместо стандартных l, c, r (базовые приемы верстки описаны в руководстве по переносу таблиц по ГОСТ).

Для центрирования текста в таких ячейках используйте пакет array с модификатором >{\centering\arraybackslash}p{4cm}.

Практические советы

1

Двойная компиляция для расчета колонок

Движок LaTeX рассчитывает ширину столбцов longtable в два прохода. Если при первой сборке границы колонок «поплыли», запустите компиляцию повторно.

2

Принудительный разрыв страницы

Если нужно разорвать longtable в строго определенном месте до заполнения листа, вставьте команду \pagebreak прямо между строк данных.

Попробуйте прямо сейчас

Работайте со сложными таблицами в Labkeeper

Онлайн-редактор LaTeX с готовыми сниппетами для таблиц longtable и автоматической компиляцией в PDF.

LaTeX editor screenshot
  • Полновесная компиляция: Получайте PDF профессионального качества с помощью встроенного LaTeX-компилятора.
  • 60 секунд на выполнение: Работайте со сложными документами без ограничений — лимит времени компиляции в разы выше, чем в аналогичных сервисах.
  • Умная конвертация: Любые вычислительные формулы автоматически преобразовываются в красивый LaTeX
  • Гибридный синтаксис: Используйте легковесные вставки Markdown прямо в сложном LaTeX-коде для ускорения работы.
bg

Другие статьи