修改生成的超链接

修改生成的超链接

我必须在我的文档中插入一个图形(例如图 1),其中已经有 3 个区域,我想将它们称为图 1(a)、图 1(b) 和图 1(c)。当我尝试将 \ref{图 1} 与 hyperref 包一起使用时,它会生成显示图 1 的超链接(或它为给定图形生成的任何计数)。我是否可以根据是否要引用图 1(a)、图 1(b) 或图 1(c) 来修改此计数?一般来说,我想在超链接中添加 (a)、(b) 或 (c)。

谢谢

答案1

如果您使用该subcaption包及其subfigure环境,则可以通过(i)将每个图形放在单独的subfigure环境中,(ii)在每个图形中提供\caption\label语句subfigure,以及(iii)使用\ref-type调用与各个子图(或,您称之为“区域”)相关联的标签来生成所需类型的交叉引用。

在此处输入图片描述

\documentclass{article}
\usepackage[demo]{graphicx} % omit 'demo' option in real doc.
\usepackage[skip=0.333\baselineskip]{subcaption}
\usepackage[colorlinks,allcolors=blue]{hyperref}
\usepackage[nameinlink,capitalize]{cleveref} % for 'clever' cross-references.
\begin{document}

\begin{figure}[ht]
\centering
\begin{subfigure}{0.5\linewidth}
\includegraphics[width=\textwidth]{pic1a}
\caption{Region A} \label{fig:1a}
\end{subfigure}

\bigskip
\begin{subfigure}{0.5\linewidth}
\includegraphics[width=\textwidth]{pic1b}
\caption{Region B} \label{fig:1b}
\end{subfigure}

\bigskip
\begin{subfigure}{0.5\linewidth}
\includegraphics[width=\textwidth]{pic1c}
\caption{Region C} \label{fig:1c}
\end{subfigure}

\caption{A figure with three subfigures} \label{fig:1}
\end{figure}

A cross-reference to \cref{fig:1}. Cross-references to \cref{fig:1a,fig:1b,,fig:1c}.
\end{document}

相关内容