一个奇怪的、可能微不足道的问题正在发生。
pdflatex test
在文件中运行以下内容后测试.tex
% -*- coding: utf-8 -*-
\documentclass[11pt]{article}
\begin{document}
\thispagestyle{empty}
We greet in Figure~\ref{myfig}.
\begin{figure}[h]
\centering\large hello
\label{myfig}
\caption{greet}
\end{figure}
\end{document}
有一次,我在文件中发现测试.aux,正如预期的那样:
\relax
\newlabel{myfig}{{}{1}}
并且我及时得到警告:
LaTeX Warning: There were undefined references.
LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
但第二次运行后pdflatex test
,数字1
并没有出现在应该出现的位置
并且警告不再出现,表明一切正常。
我应该看哪里?
(我试过了:
- 删除 aux 文件并重新编译。
- 使用 xelatex 和 lualatex。
)
我在 El Capitan 上使用 TeX Live 2015。
答案1
嗯,您的问题与您使用的操作系统和tex
发行版无关。
首先写很重要。\caption
例如,\label
请看一下这个问题或者查看 LaTeX 配套工具或其他 LaTeX 文档。
因此,有了以下 MWE
\documentclass[11pt]{article}
\begin{document}
\thispagestyle{empty}
We greet in Figure~\ref{myfig}.
\begin{figure}
\centering\large hello
\caption{greet}
\label{myfig}
\end{figure}
\end{document}
编译运行两次或更多次后,您将不会收到任何错误或警告。请注意,我已删除了[h]
适合您figure
环境的选项。请仅在确实需要时使用此选项,顺便说一句,仅使用[h]
会导致警告,然后您应该仅在需要时[ht]
或类似情况下使用。