一个标题中可以包含两个标签吗?

一个标题中可以包含两个标签吗?

在许多期刊中,通常使用一位数字的图号,并将图中的各个部分表示为 (a)、(b) 等。我想使用类似的样式。在阅读了软件包的文档captioncleveref软件包后,我没有发现任何类似的东西。我不想将图片分成两部分并使用subfigure两个标题,而是将它们全部放在一个中。

有没有简单的方法可以实现这一点?我的示例如下所示,但没有正确的引用:

\documentclass{scrbook}

\usepackage{caption}
\usepackage{cleveref}

\begin{document}

\begin{figure}
  \centering
  a \rule{10pt}{10pt} \hspace{1cm} b \rule{15pt}{15pt} 
  \caption{Common text here. \label{part_a}\textbf{(a)} Description of a. \label{part_b}\textbf{(b)} Description of b. } 
\end{figure} 

This should read fig. 0.1a and fig. 0.1b but it is only \cref{part_a} and \cref{part_b}.

\end{document}

输出结果如下: 输出图像

答案1

对 Mico 的答案进行一个小的补充,并\phantomcaption提供选项:

\documentclass{article}
\usepackage{mwe}            %For dummy images
\usepackage{subcaption}
\usepackage{cleveref}
\crefdefaultlabelformat{\thesection.#2#1#3} 

\begin{document}
\begin{figure}
\centering
\begin{subfigure}{0.4\textwidth}
  \centering
  \includegraphics[width=0.3\textwidth]{example-image-a}
  \phantomcaption 
  \label{part_a}
\end{subfigure}
\hspace{1cm} 
\begin{subfigure}{0.4\textwidth}
  \centering
  \includegraphics[width=0.3\textwidth]{example-image-b}
  \phantomcaption
  \label{part_b}
\end{subfigure}
\caption{Common caption here \textbf{(a)} On left \textbf{(b)} On right} \label{fig-overall}
\end{figure} 

This should read fig.\ 0.1a and fig.\ 0.1b, and indeed it now reads \cref{part_a} and \cref{part_b}.
\end{document}

在此处输入图片描述

答案2

我认为,一个好办法是使用subcaption包及其subfigure环境。这样,您可以为每个子图(当然还有整个图)分配标签。

请注意,您需要为每个子图环境分配一个宽度。这可以是绝对长度,例如3cm,也可以是文档变量的分数,例如\textwidth,正如我在下面的 MWE 中选择的那样。如果您有两个子图并且想要最大化它们的可能大小,您可以给它们两个一个大约的宽度0.48\textwidth,然后使用命令\hspace{\fill}将它们分开。(您不应该使用,0.5\textwidth因为有一些“开销”空白。)

\documentclass{scrbook}
\usepackage{caption,subcaption}
\usepackage{cleveref}

\begin{document}
\begin{figure}
\centering
\begin{subfigure}{0.3\textwidth}
  \centering
  a \rule{10pt}{10pt} 
  \caption{Description of a.} \label{part_a}
\end{subfigure}
\hspace{1cm} 
\begin{subfigure}{0.4\textwidth}
  \centering
  b \rule{15pt}{15pt} 
  \caption{Description of b. } \label{part_b}
\end{subfigure}
\caption{Common caption here} \label{fig-overall}
\end{figure} 

This should read fig.\ 0.1a and fig.\ 0.1b, and indeed it now reads 
\cref{part_a} and \cref{part_b}.

\end{document}

在此处输入图片描述

相关内容