使用 booktabs 包在 longtable 环境中在 \endhead 之前添加 \midrule

使用 booktabs 包在 longtable 环境中在 \endhead 之前添加 \midrule

我尝试longtable在每一页上使用重复的标题。例如:

Column 1 & Column 2 & Column 3 \endhead \midrule

导致多页表格不美观。将标题和数据分开的水平线只出现在第一页。

尝试修复它:

Column 1 & Column 2 & Column 3 \midrule \endhead

编译时会出现以下错误:

! Misplaced \noalign.
\midrule ->\noalign 
                    {\ifnum 0=`}\fi \@aboverulesep =\aboverulesep \global \@...
l.6 ...) & Column 2 & Column 3 \midrule
                                                   \endhead

如何让水平线也出现在每一页上?

以下是手册中\endhead描述部分的屏幕截图: 替代文本

答案1

看来你只是忘记了双倍\\

\documentclass{article}
\usepackage{geometry}
\geometry{paperwidth=5cm,paperheight=5cm}%a very small page
\usepackage{longtable,booktabs}
\begin{document}
    \pagestyle{empty}
    \begin{longtable}{ll}
        \caption{My longtable} \\   \toprule
        col 1 &col 2  \\ \midrule
        \endfirsthead
        \toprule
        col 1 & col 2 \\ \midrule
        \endhead
        \hline
        \multicolumn{2}{c}{Continued}\\   \bottomrule
        \endfoot
        \bottomrule
        \endlastfoot
        1 & 2\\   1 & 2\\   1 & 2\\   1 & 2\\   1 & 2\\   1 & 2\\   1 & 2\\   1 & 2\\   
    \end{longtable}

\end{document}

替代文本

相关内容