我在使索引在文档的 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
。