![当我在文档期间重置节计数器时,Hyperref 无法正常工作](https://linux22.com/image/286550/%E5%BD%93%E6%88%91%E5%9C%A8%E6%96%87%E6%A1%A3%E6%9C%9F%E9%97%B4%E9%87%8D%E7%BD%AE%E8%8A%82%E8%AE%A1%E6%95%B0%E5%99%A8%E6%97%B6%EF%BC%8CHyperref%20%E6%97%A0%E6%B3%95%E6%AD%A3%E5%B8%B8%E5%B7%A5%E4%BD%9C.png)
当我重置每个部分的节计数器时,目录中的超引用会将我带到文档的错误部分。——当我在目录中单击第二部分的第 1 节时,超引用会将我带到第一部分的第 1 节。——有没有办法解决这个问题?
第一部分 第 1 节 第 2 节 第 3 节 第二部分 第 1 节 第 2 节
ETC。
此致。
答案1
您描述的现象在使用时会产生
\setcounter{section}{0}
手动重置计数器。以下是重现该错误的简单文档:
\documentclass{article}
\usepackage[colorlinks]{hyperref}
\begin{document}
\tableofcontents
\part{Test part one}
\setcounter{section}{0}
\clearpage
\section{First test section in part one}
\clearpage
\section{Second test section in part one}
\part{Test part two}
\setcounter{section}{0}
\clearpage
\section{First test section in part two}
\clearpage
\section{Second test section in part two}
\end{document}
无需手动重置每个部分的计数器,而是使用以下命令进行重置\@addtoreset
:
\documentclass{article}
\usepackage[colorlinks]{hyperref}
\makeatletter
\@addtoreset{section}{part}
\makeatother
\begin{document}
\tableofcontents
\part{Test part one}
\clearpage
\section{First test section in part one}
\clearpage
\section{Second test section in part one}
\part{Test part two}
\clearpage
\section{First test section in part two}
\clearpage
\section{Second test section in part two}
\end{document}
\clearpage
命令仅用于示例。