我想知道,在使用 longtables 时,是否有任何方法可以获取(并在文档开头进行前向引用)表的总数?有用于标准表计数器的实用程序包,但它未在长桌从 v3.02 开始不再有:
表格计数器,在 V3.02 中添加。以前的版本只使用 LaTeX 计数器表,但如果在文档期间重置表格,则此操作会失败,例如报告类会在每个章节重置它。这已从 V3.04 中的 \newcount\LT@tables 更改。使用 \includeonly 时,LaTeX 计数器会正确保存。在文件的其余部分,\LT@tables 已被 \c@LT@tables 替换,没有进一步的评论。
答案1
\documentclass{article}
\usepackage{longtable}
\makeatletter
\gdef\LTno{??}
\AtEndDocument{\immediate\write\@auxout{\gdef\string\LTno{\theLT@tables}}}
\makeatother
\begin{document}
There are \LTno\ longtables here.
\begin{longtable}{c}a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\\end{longtable}
zzz
\begin{longtable}{c}a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\\end{longtable}
zzz
\begin{longtable}{c}a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\\end{longtable}
zzz
\end{document}