IEEEeqnarray 超連結到一組子編號方程

IEEEeqnarray 超連結到一組子編號方程

當我使用 IEEEeqnarray 子編號和 hyperref 套件時,對子編號方程式的 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} ha s被引用但不存在,替換為固定的

pdfTeX 警告 (dest): name{equation.0.0.2} 已被引用但不存在,已替換為固定的

pdfTeX 警告 (dest): name{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

相關內容