未生成图表列表:错误

未生成图表列表:错误

完成我的双面文章后,我想生成 LOF 和 LOT。

许多图形反复出现以下错误(第一个是:“未定义的控制序列”,第二个是:“缺失数字被视为零”):

! Undefined control sequence.
\l@figure #1#2->\ifnum \c@lofdepth 
                                   >\z@ \vskip \cftbeforefigskip {\leftskip ...
l.10 ...DPJIP2009}\relax }}{11}{figure.caption.14}

The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

! Missing number, treated as zero.
<to be read again> 
                   >
l.10 ...DPJIP2009}\relax }}{11}{figure.caption.14}

A number should have been here; I inserted `0'.
(If you can't figure out why I needed to see a number,
look up `weird error' in the index to The TeXbook.)

我通过 texstudio (MAC OSX) 和 \documentclass[11pt,a4paper,twoside,openany]{book} 使用 PDFLATEX。我也刚刚更新了所有软件包,没有区别(没有重启计算机)。

我希望有人能帮帮忙。

答案1

标准类有一个tocdepth计数器,但没有lofdepth计数器(其内部名称为\c@lofdepth),因此很可能您在某一时刻使用了一个用于扩展图形处理列表的包,而该包不再加载,导致临时文件处于不一致状态。

删除.lof .toc .lot.aux文件并重新乳胶,一切应该会恢复同步。

答案2

正如 Joost 在评论中提到的,当使用tocloft包的特定选项时可能会发生这种情况。

就我而言,我在序言中有以下代码:

\usepackage[subfigure]{tocloft}

subfigure选项导致了问题。手册对此进行了最好的说明,重点是我:

如果出现以下情况,则需要此选项:并且仅当tocloftsubfigure包一起使用。这两个包可以按任意顺序指定。

--(摘自 tocloft 手册第 2.1 节)

由于我没有使用该subfigure包,因此删除该选项可以消除错误。

相关内容