假设我有一个包含不同面板的图形,我想使用命令\cref
来引用每个面板。一种方法是使用包subfig
、subfigure
或subcaption
。但是,如果图形中的不同面板都位于单个文件图片中,该怎么办?
有没有办法定义子标签没有定义一个子浮点数或者子图形?
例如,考虑标准示例:
\documentclass[11pt]{article}
\usepackage{subfig}
\begin{document}
\begin{figure}
\subfloat[\label{subfig-1}]{%
\includegraphics[scale=1]{example-image-1}
}
\subfloat[\label{subfig-2}]{%
\includegraphics[scale=1]{example-image-2}
}
\caption{blah blah}
\label{fig:dummy}
\end{figure}
\end{document}
现在,我没有单独的 example-image-1 和 example-image-2,但它们是单个文件 example-image。我试图做的是创建一个“幻影”子浮点数,以便引用 example-image 的不同部分,就好像它们是两个不同且独立的人物。
PS:我按照\phantomsubcaption
包中的subcaption
建议尝试了这里,但我遇到了兼容性问题(我认为这是 revtex 问题...)。
重要的:将图片切成两半不是一种选择。
一个非常快速但肮脏的解决方案是:
\documentclass[11pt]{article}
\usepackage{subfigure}
\begin{document}
\begin{figure}
\subfigure{\label{subfig-1}}
\subfigure{\label{subfig-2}}
\includegraphics[scale=1]{example-image}
\caption{blah blah}
\label{fig:dummy}
\end{figure}
\end{document}
然而,这会在图中引入额外的空间,因为它实际上定义了 2 个空子浮点数。
我希望有人能有更好的想法。
答案1
\phantomsubcaption
看起来这里工作得很好。
\documentclass{revtex4-1}
\usepackage{subcaption}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering{\phantomsubcaption\label{sub1}\phantomsubcaption\label{sub2}}
\includegraphics[width=0.5\linewidth]{example-image-a}
\caption{\subref{sub1} shows this, \subref{sub2} shows that.}
\label{fig}
\end{figure}
Figure~\ref{fig} has subfigures \ref{sub1} and \ref{sub2}.
\end{document}
答案2
phantomsubcaption
可以revtex
,但会弄乱字幕格式。我找到了一个优雅的解决方案。你可以在这个答案。