Cleveref 中具有不同引用类型的 crefrange

Cleveref 中具有不同引用类型的 crefrange

我正在使用该Cleveref包,并在我的文档中定义了多个新的交叉引用类型,它们都引用了图形,即

\Crefname{figure}{Fig.}{Figs.}
\Crefname{fig_a}{Fig.}{Figs.}
\creflabelformat{fig_a}{#2{\color{NavyBlue}#1a)}#3}
\Crefname{fig_b}{Fig.}{Figs.}
\creflabelformat{fig_b}{#2{\color{NavyBlue}#1b)}#3}
\Crefname{fig_c}{Fig.}{Figs.}
\creflabelformat{fig_c}{#2{\color{NavyBlue}#1c)}#3}

原因是我的数字包含部分A)b)等,但不是作为子图,而是作为预编译图中的标签。因此,为了引用此类图形的各个部分,我认为可以向同一张图添加多个标签,即

\begin{figure}
  ...
  \caption{Figure with parts a) and b) and c)}
  \label{figure}
  \label[fig_a]{figure:a}
  \label[fig_b]{figure:b}
  \label[fig_c]{figure:c}
\end{figure}

现在我希望能够写

\Cref{figure:a,figure:b}
\Cref{figure:a,,figure:c}

并获得一个引用,就好像所有这些引用都是类型figure,所以类似于如图。3.2a)3.2b)如图。3.2a)3.2c)。然而,由于所有这些参考文献都是不同类型的,我得到的是如图。3.2a)和图。3.2b)如图。3.2a)至图3.2b)

我怎样才能摆脱第二个如图。在一系列引用中?我尝试用 来解决这个问题,\crefalias{fig_a}{figure}但是没有解决问题。

感谢您的帮助!

答案1

问题解决

\usepackage[nameinlink,capitalize]{cleveref} 
\Crefname{figure}{fig.}{Fig.}
\Crefname{fig_a}{fig.}{Fig.}
\creflabelformat{fig_a}{#2{\color{NavyBlue}#1a)}#3}
\Crefname{fig_b}{fig.}{Fig.}
\creflabelformat{fig_b}{#2{\color{NavyBlue}#1b)}#3}
\Crefname{fig_c}{fig.}{Fig.}
\creflabelformat{fig_c}{#2{\color{NavyBlue}#1c)}#3}

相关内容