如何在LaTeX出现之前引用它?

时间:2010-10-12 16:34:07

标签: latex reference figure

我总是喜欢将我的数字放在文本之间而不是页面的顶部或底部。我还想在展示之前谈谈这个数字。所以我想尝试这样的事情:

通过查看图〜\ ref {fig:VCO}你可以看到等等等等。

\begin{figure}[h]
\caption{VCO test circuit}\label{fig:VCO}
\begin{center}
\includegraphics[width=0.9\columnwidth]{figures/VCO_circuit.eps}
\end{center}
\end{figure}

这似乎不起作用,因为我认为它引用了尚未发生的事情?有人有一些简单的解决方案吗?我仍然是LaTeX的新手。

4 个答案:

答案 0 :(得分:18)

一般来说,LaTeX需要至少两次传递才能解析所有引用,第一次将它们写入辅助文件,第二次将它们放入最终的ps / pdf / dvi文件中。所以引用的位置无关紧要。

例如,如果您的文档包含较长的目录,这会导致页码数量增加,则需要进行第三次传递。

答案 1 :(得分:3)

它第一次失败,因为标记和引用是一个两遍过程。第一次处理乳胶时,所有标签都被索引,因此ref失败了。第二次,因为标签已被索引,所以ref知道它实际引用了什么。

答案 2 :(得分:2)

我想补充一点,latexmklink)多年来证明对我来说非常宝贵。这是一个用Perl编写的LaTeX“构建”脚本,用于编译.tex源文件的次数。它解析latex命令的输出并执行依赖性检查,以确保输出文档以最小的传递次数保持最新。它还可以处理BibTeX书目文件。一般来说,我从Ant或GNU Make makefile中调用latexmk,就像我正在编译C ++代码一样对待它。

答案 3 :(得分:1)

我有同样的问题,我找到了这个解决方案:

\graphicspath{{images/}}
\DeclareGraphicsExtensions{.jpg}

\makeatletter
\newenvironment{tablehere}
  {\def\@captype{table}}
  {}

\newenvironment{figurehere}
  {\def\@captype{figure}}
  {}
\makeatother

\begin{figurehere}
\includegraphics[height=5cm]{2-14aGa-Sur.jpg}
\caption{Hliněná destička s mapou severu Mezopotámie}
\label{fig:Ga-Sur}
\end{figurehere}

\ graphicspath {{images /}}用于声明您的图片路径

\ DeclareGraphicsExtensions {.jpg}用于声明图片扩展(多个可以用逗号(我想; - ))

\makeatletter
\newenvironment{tablehere}
  {\def\@captype{table}}
  {}

\newenvironment{figurehere}
  {\def\@captype{figure}}
  {}
\makeatother

用于精确确定位置此处

\begin{figurehere}
\includegraphics[height=5cm]{2-14aGa-Sur.jpg}
\caption{Hliněná destička s mapou severu Mezopotámie}
\label{fig:Ga-Sur}
\end{figurehere}

你的照片上有高度指定,标题和标签都是......

我希望它会对你有帮助; - )。