longtable:有没有一种简单的方法来格式化标准的多页表

longtable:有没有一种简单的方法来格式化标准的多页表

这与其说是一个问题,不如说是一个理解的问题:

在论文中,当一个表格跨越多页时,我认为标准行为应该是:

  • 相同的页眉/页脚,但标题除外,标题附加了“(继续)”
  • 表格列表中的一个条目

就我而言,我手动使用 \endfirsthead 和 \endhead (除了单词 (continued) 之外,两次相同的“head”)完成了此操作,然后我必须删除表格列表中的一个条目。

这有效,但需要大量工作并创建代码重复,有没有一种非常简单的方法(例如一个选项)可以创建相同的结果?

答案1

对于三列表格,您可以定义

\newcommand\ltheadthree[4]{%
\caption{#1}\\
\textbf{#2}&\textbf{#3}&\textbf{#4}
\endfirsthead
\caption[]{#1 (continued)}\\
\textbf{#2}&\textbf{#3}&\textbf{#4}
\endhead}

然后

\begin{longtable}{lcr}
\ltheadthree
{the caption}
{head 1}
{head 2}
{head 3}
...

应该或多或少地按照你的要求去做。

显然,可以为不同数量的列定义类似的命令。或者您可以添加居中或任何其他您想要的表头格式。

相关内容