书签包的调配命令对标准部分的书签有影响吗?

书签包的调配命令对标准部分的书签有影响吗?

我想以某种方式设置 PDF 书签的样式,以便我可以随心所欲地操纵标准部分的级别。我认为该bookmark软件包是执行此操作的最佳选择,但不幸的是,它的表现不如我预期。我的努力的 MWE 如下:

\documentclass{book}
\usepackage{hyperref,bookmark}
\begin{document}
\tableofcontents
\bookmarksetup{level=0}
\part{Part}
\chapter{Chapter 1}
\bookmarksetup{rellevel=-1}
\addcontentsline{toc}{chapter}{Chapter 2}
\chapter*{Chapter 2}
\bookmarksetup{level=1}
\chapter{Chapter 3}
\end{document}

pdf 书签树应如下所示:

部分

|__第一章

第2章

|__第三章

显然,我不能在第 2 章之前使用包\boomarksetup{startatroot}的命令,bookmark因为第 3 章也会被拉出到根目录。另一方面,代码中包含的级别选项似乎只对手动设置的书签有影响\bookmark。但是,我不想为每个章节发布手动书签,因为这会很烦人,而且我最终会在 PDF 书签中得到两个条目。包文档不是最好的,到目前为止,我还没有弄清楚是否真的可以用这个包实现样式。

我之所以不使用“第 2 章”部分,是因为我希望它像目录中的章节一样排版,就像文档正文中的章节一样。它实际上是附录的标题页。

答案1

一种选择是将“第 2 章”作为部分而不是章节添加到目录中;但是,这会将“第 2 章”视为目录中的一部分,而这并不是我们所希望的。要更正目录中的格式,您可以使用包titletoc在本地使部分在目录中表现为章节:

\documentclass{book}
\usepackage{titletoc}
\usepackage{hyperref}

\begin{document}

\tableofcontents

\part{Part}
\chapter{Chapter 1}

\begingroup
\titlecontents{part}
[0pt]{\normalsize\bfseries\vskip10pt}{}{}
{\hfill\bfseries\contentspage}

\chapter*{Chapter 2}
\addcontentsline{toc}{part}{Chapter 2}

Contents of Chapter 2....
\endgroup

\chapter{Chapter 3}

\end{document}

生成的书签树:

在此处输入图片描述

以及由此产生的目录:

在此处输入图片描述

答案2

在您的 MWE 中只需替换

\bookmarksetup{rellevel=-1}

经过

\bookmarksetupnext{rellevel=-1}

以达到预期效果。此外,您还可以删除

\bookmarksetup{level=0}

\bookmarksetup{level=1}

您应该注意到,第 2 章的标题将显示“第 1 章”,第 3 章将被命名为“第 2 章”,因为您使用了\chapter*{Chapter 2}而不是\chapter{Chapter 2},但也许您想要这个(并手动更改内容)。

相关内容