如果我使用longtable
和caption
-package,有时会发生这种情况,如果表格损坏,\endhead
和\endfoot
会被忽略。如果我不加载 -package,caption
它会按预期工作。有人知道是什么导致了这个问题以及如何防止它吗?
编辑:我尝试使用旧版本longtable
(2020/01/07 v4.13),它仍然有效。我比较了两个 .sty 文件,问题是由于在定义中排除了以下代码而发生的\def\LT@output{...}
:
\global\@colroom\@colht
\global\vsize\@colht
\vbox
{\unvbox\z@\box\ifvoid\LT@lastfoot\LT@foot\else\LT@lastfoot\fi}%
而在新版本的 longtable 中:
\unvbox\z@\box\ifvoid\LT@lastfoot\LT@foot\else\LT@lastfoot\fi
被使用。但我不知道此代码有何用途,以及为什么它只与caption
-package 结合出现,以及它是功能还是错误。
下面是一个 MWE 来展示这个问题:
\documentclass[a6paper]{scrartcl}
\usepackage{longtable}
\usepackage{caption} % commenting this line shows the desired output
\begin{document}
\begin{longtable}{l}
\hline
\textbf{Header}\\
\hline
\endhead
\hline
\caption{some caption}
\endfoot
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
test \\
\end{longtable}
\end{document}