我有一张包含多个部分(a、b、c 等)的图,我想在文本中引用该图的各个部分的字母(即图 1(b))。有没有办法将其传递给\cref{}
或\ref{}
让它执行此操作?
编辑:所以这原来是一个愚蠢的问题。我忘了\ref{}
只返回数字,所以这很容易做到
Figure \ref{fig:1}a says...
答案1
如果您使用subfig
或subcaption
包来构建子浮点数,除了标准\ref
命令之外,您还可以使用\subref
来引用特定的子浮点数。标准\ref
命令返回由浮点数和 连接而成的标签
\thesubfloat
;该\subref
命令仅返回子浮点数的标签:
\documentclass{article}
\usepackage{subfig}
\begin{document}
\begin{figure}
\centering
\subfloat[test1\label{sub:1}]{A}\qquad
\subfloat[test2\label{sub:2}]{B}
\caption{General caption}
\label{fig:test}
\end{figure}
Figure~\ref{fig:test} and subfigures~\subref{sub:1} and \subref{sub:2}
Figure~\ref{fig:test} and subfigures~\ref{sub:1} and \ref{sub:2}
\end{document}
cleveref
您可以使用来\crefname
更改\Crefname
子图使用的默认名称:
\documentclass{article}
\usepackage{subfig}
\usepackage{cleveref}
\crefname{subfigure}{subfigure}{subfigures}
\Crefname{subfigure}{Subfigure}{Subfigures}
\begin{document}
\begin{figure}
\centering
\subfloat[test1\label{sub:1}]{A}\qquad
\subfloat[test2\label{sub:2}]{B}
\caption{General caption}
\label{fig:test}
\end{figure}
\Cref{fig:test} and \cref{sub:1,sub:2}
\Cref{fig:test} and \cref{sub:1,sub:2}
\end{document}