交叉引用多个不连续的图形和子图形

交叉引用多个不连续的图形和子图形

我正在尝试在 hyperref 环境中创建可点击的图形引用,并且我想要以下输出格式:

“...如图 1.1a 和 1.2ab 所示”。

对于自定义引用,我看到了以下解决方案:

\newcommand{\multiref}[2]{\autoref{#1}, \ref{#2}}
\multiref{fig:startfiglabel}{fig:endfiglabel}

但是,我的问题是输出是'数字' 并不是 '人物'。 我怎样才能解决这个问题?

提前致谢 :)

答案1

我建议你使用\cref使用聪明人包来生成交叉引用所需的“外观”。

在此处输入图片描述

顺便说一下,为了生成'--'(endash)范围连接符号,的参数中必须有三个或更多连续的编号对象\cref

\documentclass{article}
\counterwithin{figure}{section}
\usepackage{subcaption} % for 'subfigure' environment and counter

\usepackage[colorlinks,allcolors=blue]{hyperref}
\usepackage[noabbrev,nameinlink,capitalize]{cleveref}
%% see p. 20 of user guide for '\crefstripprefix' macro:
\crefrangelabelformat{subfigure}{#3#1#4--#5\crefstripprefix{#1}{#2}#6}
%% Optional: if "Oxford comma" is needed, uncomment the next line:
% \newcommand{\creflastconjunction}{, and }

\begin{document}

%% generate suitable '\label's for 'figure' and 'subfigure' objects:
\stepcounter{section}
\refstepcounter{figure}    \label{fig:A}   % 1.1
\refstepcounter{subfigure} \label{fig:aaa} % (a)
\refstepcounter{subfigure} \label{fig:bbb} % (b)
\refstepcounter{figure}    \label{fig:B}   % 1.2
\refstepcounter{subfigure} \label{fig:ccc} % (a)
\refstepcounter{subfigure} \label{fig:ddd} % (b)
\refstepcounter{subfigure} \label{fig:eee} % (c)


Cross-references to \cref{fig:aaa,fig:ccc,fig:eee}.

Cross-references to \cref{fig:aaa,fig:ccc,fig:ddd,fig:eee}.
\end{document}

相关内容