所以我有一段代码如下
\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{verbatim}
\usepackage[margin=1in]{geometry}
\usepackage{hyperref}
\usepackage{booktabs}
\usepackage{xparse}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\label{collecting_the_spectra}
\subsection{}
\label{usb}
If the screen in Figure \ref{4_specs}
\begin{figure}[htp]
\centering
\includegraphics[width=5in]{4_specs.png}
\hspace{1.5in}\parbox{5in}{\caption{All spectrometers.}}
\label{4_specs}
\end{figure}
\end{document}
如果你指向一张实际的图片,它应该可以编译4_specs.png
,但出于某种原因,它会输出如下内容
注意写着“图 0.1”的地方。其他地方都没有标签4_specs
。这些是整篇论文中唯一被破坏的参考文献。LaTeX 为什么这样做?
答案1
以下 MWE 复制了您的问题:
\documentclass{article}
\begin{document}
\section{A section}\subsection{A subsection}
See Figures~\ref{fig:A} and~\ref{fig:B}.
\begin{figure}
% <your figure>
\caption{A caption}\label{fig:A}
\end{figure}
\begin{figure}
% <your figure>
{\caption{A caption}}\label{fig:B}
\end{figure}
\end{document}
请注意,图 2 的标题放在组内{
... }
。这类似于将 放在\caption
内\parbox
。当您发出 时\label
,LaTeX 会更新包含上次更新计数器的宏。关闭组后,其中包含的宏更新通常会恢复,从而使引用不正确。有关- 的\@currentlabel
一般讨论\label
\ref
,请参阅了解引用和标签的工作原理。
\caption
如果设定的动机\parbox
是为了固定宽度,请考虑使用caption
包裹相反。它提供了一个width
键值,可能正好提供您所需的内容(请参阅2.4 边距和其他段落选项,第 11 页或caption
文档)。当然,它还提供了很多其他的功能。
以下是caption
MWE 的一种方法:
\begin{figure}
% <your figure>
\captionsetup{width=<len>}% Constrain caption width to <len>
\caption{<your caption>}\label{fig:B}
\end{figure}
或者您可以在文档前言中全局设置键值。