IEEEeqnarray 超链接到一组子编号的方程式

IEEEeqnarray 超链接到一组子编号的方程式

当我使用 IEEEeqnarray 子编号和 hyperref 包时,子编号方程的超引用可以正常工作;但如果我尝试引用方程组,则找不到标签。

示例文档:

\documentclass[12pt]{report}
\usepackage{IEEEtrantools}
\usepackage{hyperref}

\begin{document}
When I create an IEEEeqnarray with subequation numbering and try to point back to the group of equations, the hyperrefs are broken.

\newpage

\begin{IEEEeqnarray}{rCl}\label{eqn:FirstParentLabel}
f(x) &=& 5x \IEEEyesnumber\IEEEyessubnumber\label{eqn:FirstSubeqnLabel}
\end{IEEEeqnarray}

\begin{IEEEeqnarray}{rCl}\IEEEyesnumber\label{eqn:SecondParentLabel}
g(x) &=& \pi \IEEEyesnumber\IEEEyessubnumber\label{eqn:SecondSubeqnLabel}
\end{IEEEeqnarray}

\begin{IEEEeqnarray}{rCl}
h(x) &=& 42 \IEEEyesnumber\label{eqn:ThirdParentLabel}\IEEEyessubnumber\label{eqn:ThirdSubeqnLabel}
\end{IEEEeqnarray}

\begin{IEEEeqnarray}{rCl}
k(x) &=& C \label{eqn:FourthLabel}
\end{IEEEeqnarray}

\newpage

References to subequations work: \ref{eqn:FirstSubeqnLabel},\ref{eqn:SecondSubeqnLabel}, and \ref{eqn:ThirdSubeqnLabel}.  But references to groups of equations do not work: \ref{eqn:FirstParentLabel}, \ref{eqn:SecondParentLabel}, and \ref{eqn:ThirdParentLabel}.  If I don't use subnumbering everything works fine: \ref{eqn:FourthLabel}.

\end{document}

我使用的是 TexLive 2012 和最新版本的 IEEEtrantools.sty。编译器错误消息如下:pdfTeX warning (dest): name{equation.0.0.3} 已被引用但不存在,已被固定名称替换

pdfTeX 警告(目标):名称{equation.0.0.2} 已被引用但不存在,已由固定名称替换

pdfTeX 警告(目标):名称{equation.0.0.1} 已被引用但不存在,已由固定名称替换

知道为什么会这样吗?我无法再想出上述尝试的任何排列组合。谢谢!

答案1

放置一个明确的标记 -\phantomsection -every\IEEEyesnumber来标记适当的超目标:

\begin{IEEEeqnarray}{rCl}\IEEEyesnumber\phantomsection\label{eqn:FirstParentLabel}
f(x) &=& 5x \IEEEyessubnumber\label{eqn:FirstSubeqnLabel}
\end{IEEEeqnarray}

\begin{IEEEeqnarray}{rCl}\IEEEyesnumber\phantomsection\label{eqn:SecondParentLabel}
g(x) &=& \pi \IEEEyessubnumber\label{eqn:SecondSubeqnLabel}
\end{IEEEeqnarray}

\begin{IEEEeqnarray}{rCl}\IEEEyesnumber\phantomsection\label{eqn:ThirdParentLabel}
h(x) &=& 42 \IEEEyessubnumber\label{eqn:ThirdSubeqnLabel}
\end{IEEEeqnarray}

\begin{IEEEeqnarray}{rCl}
k(x) &=& C \label{eqn:FourthLabel}
\end{IEEEeqnarray}

\IEEEyessubnumber将在标签显示方面覆盖 的使用\IEEEyesnumber。但是,此时,布局\phantomsection已经建立了一个适当的(不同的)超目标,而不是子方程式 所遵循的超目标\label

相关内容