我尝试调试我的 LaTex 文件,为此我从这个最小的代码示例开始:
\documentclass[10pt]{article}
%#####################################
\begin{document}
\paragraph{Paragraph:}
\label{par:paragraph}
Test
\end{document}
为什么我会在这里收到警告?我不明白。
感谢帮助!
答案1
正如我所说,有两个问题。首先是警告。要完全解析标签需要 2 次编译。如果再次重新编译,警告就会消失。第一次编译会收集信息\label
并将其写入辅助文件。第二次编译将确保相应的\ref
s(如果存在)指向正确的标签。
其次,段落的问题。默认情况下,文章类不计算段落,因此标签无效。您必须增加\setcounter{secnumdepth}{4}
才能计算段落,并使\label
有效。否则,深度为 时3
,只会得到\section
、\subsection
和\subsubsection
的数字,而不会得到\paragraph
。
\documentclass[10pt]{article}
%#####################################
\setcounter{secnumdepth}{4}
\begin{document}
About to begin paragraph~\ref{par:paragraph}
\paragraph{Paragraph:}
\label{par:paragraph}
Test
\end{document}
第一次编译后,结果就是这样,因为\ref
没有\label
可以使用的信息。
第二次编译可以使用写入 aux 文件的信息来解析引用,结果如下: