我的代码:
\documentclass[
titlepage,
abstract
]{scrartcl}
\usepackage[texindy]{imakeidx}
\usepackage{hyperref}
\makeindex[intoc]
\title{Test}
\dedication{Test.}
\begin{document}
\maketitle
\begin{abstract}
Test.
\end{abstract}
\pagenumbering{Roman}
\tableofcontents
\newpage
\pagenumbering{arabic}
\section{Test}
Das Zweistrom-Turbinen-Luftstrahltriebwerk (ZTL)\index{ZTL}~\ldots
\newpage
\pagenumbering{Roman}
\setcounter{page}{2}
\printindex
\end{document}
目录应该以大罗马字母开头。文本部分(在 MWE 中以测试部分开头)应该以阿拉伯字母开头。这样可行。
但是,如果我单击索引中的链接,它会跳转到标题页(物理页 1)。我不知道我做错了什么,但如果我注释掉与页码有关的行(两次\pagenumbering{Roman}
、\pagenumbering{arabic}
和\setcounter{page}{2}
),它就会出现预期的行为。同时,目录中的超链接每次都有效。
为什么会这样?我该如何解决这个问题?
提前感谢您的帮助和努力!
答案1
你得到
pdfTeX warning (ext4): destination with the same identifier (name{page.1})
has been already used, duplicate ignored
问题在于标题页与出现页面共享数字 1 \section{Test}
。
添加\pagenumbering{Alph}
前页。\clearpage
与\newpage
更改页码样式之前相比,使用起来更加简洁。
\documentclass[
titlepage,
abstract
]{scrartcl}
\usepackage[texindy]{imakeidx}
\usepackage{hyperref}
\makeindex[intoc]
\title{Test}
\dedication{Test.}
\begin{document}
\pagenumbering{Alph}
\maketitle
\begin{abstract}
Test.
\end{abstract}
\clearpage
\pagenumbering{Roman}
\tableofcontents
\clearpage
\pagenumbering{arabic}
\section{Test}
Das Zweistrom-Turbinen-Luftstrahltriebwerk (ZTL)\index{ZTL}~\ldots
\clearpage
\pagenumbering{Roman}
\setcounter{page}{2}
\printindex
\end{document}
答案2
尝试这样做,只需使用 \pagenumbering{Roman} \pagenumbering{arabic}
软件包即可
\documentclass[
titlepage,
abstract
]{scrartcl}
\usepackage[texindy]{imakeidx}
\usepackage{hyperref}
\pagenumbering{Roman}
\pagenumbering{arabic}
\makeindex[intoc]
\title{Test}
\dedication{Test.}
\begin{document}
\maketitle
\begin{abstract}
Test.
\end{abstract}
\tableofcontents
\newpage
\section{Test}
Das Zweistrom-Turbinen-Luftstrahltriebwerk (ZTL)\index{ZTL}~\ldots
\newpage
\pagenumbering{Roman}
\setcounter{page}{2}
\printindex
\end{document}
杰里米