我正在撰写的一份文件需要索引。这很好……只是“前言”有罗马页码,这似乎有点混乱。
在编译时,我收到警告“pdfTeX 警告(dest):name{page.i} 已被引用但不存在,已被固定的替换”。
索引中的条目很好 - 但链接没有转到正确的页面。
据我所知,这里没有一个答案完全符合我的问题。我更加困惑,因为 makeindex 文档指出“MakeIndex 假设所有页码都是阿拉伯数字或小写罗马数字;它假设用罗马数字编号的页面在用阿拉伯数字编号的页面之前。”
有人能解释一下我做错了什么吗?或者 makeindex/hyperref 根本就不执行我要求(和期望)的操作?如果是这样,还有其他方法可以实现我想要做的事情吗?
[我应该补充一下,我已经尝试过 texindy,但真的不明白发生了什么!]
平均能量损失
\documentclass{report}
\usepackage[T1]{fontenc}
\usepackage[hypertexnames=false]{hyperref}
\usepackage{makeidx} % For creating indexes
\makeindex
\begin{document}
\pagenumbering{roman}
\chapter{Further Reading}
\label{chap:furtherreading}
Further reading goes here \index{Reading}
\clearpage
\chapter{Logging In}
\pagenumbering{arabic}
\label{chap:loggingin}
Some text for the first main page. \index{Main}
\clearpage
\printindex
\end{document}
答案1
hypertexnames=false
破坏了此处的索引功能,因为它删除了页面锚点名称中的页面计数器的格式。