导航中的索引链接不正确

导航中的索引链接不正确

我在使索引在文档的 pdf 预览中可见时遇到了麻烦。也就是说,以下是我的主 .tex 文件的结尾:

% Bibliography
% =================================================================
\bibliographystyle{plainnat}
\bibliography{refs}
\addcontentsline{toc}{chapter}{Bibliography}
% =================================================================

\printindex
\addcontentsline{toc}{chapter}{Index}

这确实在导航中显示了 Index,但它实际上指向了参考书目。交换 \printindex 和 \addcontentsline 的位置会将 Index 从导航中删除。我如何才能实现对 Index 的精确导航?

答案1

当 LaTeX 看到你的\addcontentsline命令时,它已经完成了索引的排版。因此,如果索引超过一页,对页码的引用将是错误的。请

\cleardoublepage
\phantomsection
\addcontentsline{toc}{chapter}{\indexname}
\printindex

或者尝试自动添加条目的包tocbibind(也适用于参考书目,并且默认情况下,还适用于目录本身):

\usepackage[nottoc]{tocbibind} % nottoc will exclude the toc

或者你可以使用

\usepackage{imakeidx}
\makeindex[intoc]

而不是\usepackage{makeidx}\makeindex。这也会平衡索引中的最后一页。记得hyperref在 之后调用imakeidx

相关内容