我的問題是cref
命令沒有根據subfigures
環境分配的數字來引用數字。這是原始碼:
\documentclass{report}
\usepackage{subfloat}
\usepackage{caption}
\usepackage{cleveref}
\begin{document}
\begin{subfigures}
% Subfigure 1
\begin{figure}
\centering
\fbox{\Huge Figure 1}
\label{fig1}
\caption{Caption 1}
\end{figure}
% Subfigure 2
\begin{figure}
\centering
\fbox{\Huge Figure 2}
\label{fig2}
\caption{Caption 2}
\end{figure}
\end{subfigures}
\centering Reference to Figure 1a typesets as \textbf{\cref{fig1}}
\centering Reference to Figure 1b typesets as \textbf{\cref{fig2}}
\centering The referencing output should be something like this: \textbf{fig. 1a} and \textbf{fig. 1b}
\end{document}
答案1
來自以下文檔cleveref
:
Cleveref 不知道 subfloat 套件,因此您必須恢復使用 \ref 來交叉引用子圖。 (可能會在未來版本中修復。)
自2013年以來就沒有更新過,但你可以自己做(注意你可以將定義放在一個cleveref.cfg
文件中):
\documentclass{report}
\usepackage{subfloat}
\usepackage{caption}
\usepackage{cleveref}
\Crefname{subfigures}{figure}{figures}%
\Crefname{subfigures}{Figure}{Figures}%
\begin{document}
\begin{subfigures}
% Subfigure 1
\begin{figure}
\centering
\fbox{\Huge Figure 1}
\caption{Caption 1}\label{fig1}
\end{figure}
% Subfigure 2
\begin{figure}
\centering
\fbox{\Huge Figure 2}
\caption{Caption 2}\label{fig2}
\end{figure}
\end{subfigures}
\centering Reference to Figure 1a typesets as \textbf{\cref{fig1}}
\centering Reference to Figure 1b typesets as \textbf{\cref{fig2}}.
\centering The referencing output should be something like this: \textbf{\ref{fig1}} and \textbf{\ref{fig2}}
\end{document}
編輯:
根據包作者的說法,上面的引用要么引用(!)引用(!! - 不聰明)只是 subfloat 組件(a
,b
),要么是包的先前版本的遺留物。