hyperref 和 nd3 有相同的标识符警告

hyperref 和 nd3 有相同的标识符警告

hyperref当我组合和nd3包(用于格式化逻辑推理)时收到错误消息,例如

“pdfTeX 警告(ext4):具有相同标识符(名称{@NDlines.1})的目标已被使用,重复项被忽略”。

我想解决这个问题,所以有人可以帮我找到修改软件包nd3或避免产生错误的方法吗?

我从其他帖子中看到其他软件包在与 结合时也存在类似的问题hyperref,但我找不到任何能帮助我的东西。

一位 MWE 表示:

\documentclass[10pt]{book}
\usepackage{nd3}

\usepackage{hyperref}
\begin{document}

Blah

\begin{ND}
\ndl{}{P}{}
\end{ND}

Blah

\begin{ND}
\ndl{}{Q}{}
\end{ND}

Blah

\end{document}

答案1

您需要为 hyperref 提供行计数器的唯一替代表示。例如

\documentclass[10pt]{book}
\usepackage{nd3}

\usepackage{hyperref}
\makeatletter
\newcommand\theH@NDlines
 {\the@NDnumber.\the@NDlines}
 \makeatother
\begin{document}

Blah

\begin{ND}
\ndl{}{P}{}
\end{ND}

Blah

\begin{ND}
\ndl{}{Q}{}
\end{ND}

Blah

\end{document}

相关内容