图表列表是空的吗?

图表列表是空的吗?

您好,我想隐藏内容列表中的章节和小节,但将它们保留在正文中,因此我使用了以下代码:

\addtocontents{toc}{\protect\setcounter{tocdepth}{0}}

\listoffigures

并且它起作用了,但是曾经满的图表列表现在变成了空的并且什么都没有显示,那么我怎样才能隐藏章节和小节而不影响图表列表呢?

答案1

图片和表格的目录级别为 1,来自report.cls

\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}

\l@<type><type>是用于在对象(chaptersection、 、 ...)的目录和列表中设置条目的内部命令figure。 的第一个参数\@dottedtocline包含级别。 如果级别大于tocdepth,则从 开始抑制latex.ltx

\def\@dottedtocline#1#2#3#4#5{%
  \ifnum #1>\c@tocdepth % = \value{tocdepth}
    % Entry is suppressed
  \else
    % ...
  \fi
}

tocdepth将数字列表的值设置为 1 应该可以解决问题:

\documentclass{report}
\begin{document}

\setcounter{tocdepth}{0}
\tableofcontents

\setcounter{tocdepth}{1}
\listoffigures

\chapter{First chapter}
\section{First section}
\begin{figure}
\caption{First figure}
\end{figure}
\end{document}

相关内容