索引超链接错误跳转到物理页面,而不是编号页面

索引超链接错误跳转到物理页面,而不是编号页面

在下面的示例memoir文档中,第 3 页(即整个文档的物理第 5 页)\index(two}上的条目mainmatter在索引中显示为

二,三

但是,“two”的索引超链接错误地跳转到物理页面 3(即目录页),而不是预期的编号为 3 的主要内容页面。

我尝试了包括hyperref默认选项plainpages=false和将其更改为两种方法plainpages=true,但错误行为没有任何改变。

如何纠正这个问题?

%% file indexing-lin-err.tex
%
\begin{filecontents}{indexing-link-err.ist}
% MakeIndex style file 
item_0  "\n\\item {"
delim_0 "}, "
item_x1 "} \n \\subitem "
headings_flag 1
\end{filecontents}

\documentclass{memoir}

\usepackage{hyperref}
\hypersetup{
  hypertexnames=false,
  plainpages=false, % no link change if use plainpages=false
  pdfpagelabels,
  bookmarksnumbered,
  linktocpage=true,linktoc=all, 
}

\usepackage{kantlipsum}

\makeindex

\begin{document}

\frontmatter
\pagestyle{empty}
{\centering\Huge THE TITLE}\clearpage
{\LARGE Copyright notice}\clearpage

\pagestyle{headings}

\tableofcontents\cleardoublepage

\chapter{Preface}

\kant[1-8]\clearpage

\mainmatter

\chapter{The chapter}
\section{A section}

\kant[1]\index{one}

\kant[2-8]\index{two}
\clearpage

\backmatter

\printindex

\end{document}

错误的超链接跳转

笔记:

  1. 由于\pagestyle{empty},标题页和版权页上没有任何页码。然后roman以 开头的数字iii出现在目录页上,并延续到前言中。正如预期的那样,arabic以 开头的数字1出现在mainmatter页面上。
  2. 包含该hyperref选项的hypertexnames=false原因是,在我的实际书长文档中,有一个“第 0 章”,并且如果没有该选项,则定理、章节等的超链接会逐一偏离。
  3. 文档中描述了一种可能的修复方法memoir是使用\begin{titlingpage}...\end{titlingpage}位于序言之前的标题等页面。然而,这会导致不想要的结果:这两页将根本不被计算在内,因此序言将显示页码 i,而不是所需的页码 iii。

相关内容