自定义章节编号与 hyperref

自定义章节编号与 hyperref

我想改变章节编号,使我的论文导言有编号I,第一章有编号1,等等。所以我改变了编号的样式,导言使用罗马字母,其他章节使用阿拉伯字母,如下所示:

\documentclass[11pt,a4paper]{book}


\usepackage{hyperref}

\begin{document}

\stepcounter{chapter}
\renewcommand*\thechapter{\Roman{chapter}}   %set the style to roman

\chapter{Introduction}
My amazing intro
\newpage

\setcounter{chapter}{0}                     %reset the chapter counter: here lies the problem, I guess
\renewcommand*\thechapter{\arabic{chapter}} %change style to arabic

\chapter{Chapter 1}
My first chapter
\newpage
\chapter{Chapter 2}
My second chapter.
\end{doument}

我得到了我想要的:简介中的章节和方程式的编号。 属于I.1我拥有的第 1 章的类型和开头1.1,但现在 hyperref 包造成了一些混乱:因为这样,根据内部编号,简介和第一章是两个都第 1 章、引用章节1.1实际上是章节I.1等等。

更清楚一点:当我在 pdf 中单击对该部分的引用时1.1,链接会将我发送到I.1简介中的该部分。

我该如何解决这个问题?

答案1

如果章节号被操纵,则使用hyperref时会“混淆” hypertexnames=true(默认情况下会这样做)。指定hypertexnames=falsehyperref包的选项可提供正确的书签和链接。

笔记该解决方案没有解决诸如\tolerance等问题。

\documentclass[11pt,a4paper]{book}
\tolerance=1000
\hbadness=10000


\usepackage{textcomp}

\usepackage{wasysym}
\usepackage{ae}
\usepackage{fancyhdr}
\usepackage[Conny]{fncychap}

\usepackage{indentfirst}
\usepackage[hypertexnames=false]{hyperref}

\begin{document}

\stepcounter{chapter}
\renewcommand*\thechapter{\Roman{chapter}}   %set the style to roman
%\input{intro}
\section{Introduction}%
\newpage

\setcounter{chapter}{0}                     %reset the chapter counter: here lies the problem, I guess
\renewcommand*\thechapter{\arabic{chapter}} %change style to arabic

\chapter{First}
%\input{ch1}

%\newpage
\chapter{Second}
%\input{ch2}

\end{document}

相关内容