Таблиці довше однієї сторінки
довгі колонтитули таблиці, які повторюються.
Таблиці довші за одну сторінку
Звичайне табличне середовище - це float, і float має поміщатися на одній сторінці. Дайте йому шістдесят рядків, і LaTeX або заштовхне його на плаваючу сторінку та дозволить йому переповнитися, або відкладе його назавжди. Виправленням є пакет longtable, який набирає таблицю, яка розбивається на сторінки та повторює свій заголовок на кожній, як це робить роздруківка електронної таблиці.
\usepackage{longtable,booktabs}\begin{longtable}{ll} \toprule Key & Value \\ \midrule \endfirsthead \toprule Key & Value \\ \midrule \endhead \bottomrule \endfoot a & 1 \\ % ... many rows\end{longtable}Як працюють блоки заголовків
“Довга таблиця” починається з чотирьох блоків декларацій перед фактичними рядками даних. Усе, що над \endfirsthead є заголовком, надрукованим один раз, на самому початку таблиці. Усе, що знаходиться між \endfirsthead і \endhead, є заголовком, який повторюється у верхній частині кожної наступної сторінки, тому той самий рядок «Ключ і значення» з’являється двічі у прикладі. Блок, що закінчується на \endfoot, друкується внизу кожної сторінки, до якої торкається таблиця, тут лише закриває \bottomrule. Існує також \endlastfoot для матеріалів, які мають відображатися лише під останніми рядками, наприклад, рядок підсумків. Якщо вам потрібна підказка про продовження, загальним шаблоном є \midrule \multicolumn{2}{r}{continued on next page} \\ у блоці стопи та справжній \bottomrule в останній стопі.
Після оголошень йдуть рядки даних, записані точно так само, як у звичайній таблиці з & між клітинками та \\ в кінці кожного рядка. Правила booktabs працюють без змін. Що вони замінюють, див. таблиці трьох правил.
Не float, і що це означає
Найважливіша поведінкова відмінність викладена в одному реченні: longtable — це не float. Він починається саме там, де ви розміщуєте його в джерелі, розривається там, де розриваються сторінки, і не приймає аргумент [htbp]. Це також змінює роботу субтитрів. Ви не загортаєте longtable в середовище table. Натомість помістіть \caption{...}\\ у саму таблицю як перший рядок блоку першої заголовки, і вона буде пронумерована в тій самій послідовності, що й інші ваші таблиці.
Перш ніж покладатися на це, потрібно знати дві речі
По-перше, ширина стовпців визначається глобально, тому LaTeX може знадобитися кілька проходів компіляції, перш ніж стовпці перестануть зміщуватися. Продовжуйте компілювати, доки макет не встановиться. По-друге, longtable не можна використовувати в макеті з двома стовпцями, що виключає його для більшості шаблонів конференцій. У цих документах реалістичними варіантами є зменшення таблиці, поділ її на частини або переміщення до додатка з одним стовпцем.