参考补充信息中的图表

参考补充信息中的图表

我正在超链接

\usepackage{hyperref}

并使用以下命令开始补充信息部分:

\begin\newcommand{\beginsupplement}{
    \setcounter{section}{0}
    \renewcommand{\thesection}{S\arabic{section}}
    \setcounter{equation}{0}
    \renewcommand{\theequation}{S\arabic{equation}}
    \setcounter{figure}{0}
    \renewcommand{\thefigure}{S\arabic{figure}}}

在我调用 \usepackage{hyperref} 之前,方程式、图形和章节都编号为 1、2、...,并正确链接到它们引用的方程式、图形和章节。

在我调用 \usepackage{hyperref} 后,方程式、图表和章节都编号为 S1、S2……并且方程式和章节链接正确。但是图表莫名其妙地没有链接。

我的数字被标记为

\begin{figure*}
    \centering
    \includegraphics[width=8cm]{subfig1.png}
    \includegraphics[width=8cm]{subfig2.png}

    \vspace{0.5cm}

    \includegraphics[width=8cm]{subfig3.png}
    \includegraphics[width=8cm]{subfig4.png}
    \caption{Caption text here.}
    \label{fig:spresults1}
\end{figure*}

当我引用补充信息中的图 S3 时,数字 S3 可以正确显示,但当我单击链接时,它会将我带到正文中的图 3。但是,方程式和部分可以正常工作 - 方程式 S14 链接到方程式 S14 而不是方程式 14。

\ref 本身运行良好,但我认为 hyperref 包存在问题。有人知道怎么解决这个问题吗?

答案1

经过一些实验,我找到了一个解决方案,即创建一个新的计数器。我把它放在下面用于开始补充信息的块的最后两行中。

\newcommand{\beginsupplement}{
    \setcounter{section}{0}
    \renewcommand{\thesection}{S\arabic{section}}
    \setcounter{equation}{0}
    \renewcommand{\theequation}{S\arabic{equation}}
    \setcounter{table}{0}
    \renewcommand{\thetable}{S\arabic{table}}
    \setcounter{figure}{0}
    \renewcommand{\thefigure}{S\arabic{figure}}
    \newcounter{SIfig}
    \renewcommand{\theSIfig}{S\arabic{SIfig}}}

然后我在新图中使用新计数器作为

\begin{figure*}
    \centering
    \includegraphics[width=8cm]{subfig1.png}
    \includegraphics[width=8cm]{subfig2.png}

    \vspace{0.5cm}

    \includegraphics[width=8cm]{subfig3.png}
    \includegraphics[width=8cm]{subfig4.png}

    \refstepcounter{SIfig}\label{fig:spresults1}

    \caption{Caption text here.}
\end{figure*}

这样标签就应用于 SIfig 计数器而不是标题。由于标签的目标与图形计数器完全不同,对 SI 图形的引用可以正确链接回 SI 图形。

相关内容