可以使用命令获取表格列表。我想知道如果文档不包含任何表格,listoftables
如何跳过输出。谢谢listoftables
\documentclass[11pt]{article}
\begin{document}
\tableofcontents
\listoftables
\clearpage
\section{Dummy section 1}
\begin{table}[ht]
\caption{Dummy table 1}
\begin{center}
\begin{tabular}{|c|c|}
\end{tabular}
\end{center}
\label{tab:dum1}
\end{table}
\end{document}
答案1
一种可能的方法是使用表计数器
\ifnum\value{table} > 0 \listoftables \fi
单独使用是行不通的,因为在处理阶段不知道桌子的数量。使用totcounter
包可以记录桌子的总数(写入文件.aux
(因此最终在第二次运行中知道)。但是,由于桌子计数器可能在chapter
或section
计数器的重置列表中(取决于其他设置),(总)桌子计数器的值可能为零。因此我使用了(我的 ;-))assoccnt
包,它以不同的方式计算桌子的数量。
\documentclass[11pt]{article}
\usepackage{assoccnt}
\usepackage{totcount}
\newtotcounter{tottables}
\DeclareAssociatedCounters{table}{tottables}
\begin{document}
\tableofcontents
\ifnum\totvalue{tottables} > 0
\listoftables
\fi
\IfFileExists{\jobname.lot}{%
\listoftables
}{%
% Does not exist
}
\clearpage
\section{Dummy section 1}
\begin{table}[ht]
%\caption{Dummy table 1}
\centering
\begin{tabular}{|c|c|}
\end{tabular}
\label{tab:dum1}
\end{table}
\end{document}