自定义 PDF 书签

自定义 PDF 书签

我有以下文档(这是一个例子):

\documentclass{book}

\usepackage[bookmarks=true,pdfborder={0 0 0}]{hyperref}

\title{Sample document}

\begin{document}

\thispagestyle{empty}
\maketitle
\thispagestyle{empty}
\frontmatter

\pagestyle{plain} 
\tableofcontents

\mainmatter
\part{My first part}
\chapter{A chapter}
\section{First section}
A text...
\chapter{Other chapter}
Other text...

\part{My second part}
\chapter{Another chapter}
Yet another text...

\end{document}

并且正在生成的 PDF 书签不能满足我的需求。我需要:

  • 根节点“示例文档”指向文档第一页(标题页)的开头
  • 目录页(TOC)像书签上的一个文档部分一样出现(但不在目录中,我不希望它出现在目录中,只希望它出现在书签中)
  • 我想要的是“第一部分:我的第一部分”,而不是“我的第一部分”,其他部分也是如此
  • 我想要的是“1 章”,而不是“一章”,我想要的是“2 另一章”,而不是“其他章”,依此类推
  • 该部分将继续像当前书签中一样显示,没有数字,只有标题

我怎样才能做到这一点?

答案1

您可以使用bookmark包。例如:

\usepackage[numbered]{bookmark}

导致编号书签,如所需的2 其他章节

\bookmark[page=1,level=0]{Sample document}

一开始会提供所需的第一个书签。它提供文档中描述的更多功能。只需按照上面的链接转到 CTAN 或texdoc bookmark在命令提示符下键入即可。

答案2

我使用 Stefan 的建议解决了书签问题。我在这里发布了我所做的工作,以便它可以帮助遇到此问题并面临相同问题的人。

添加根节点:

\bookmark[page=1,level=-2]{Sample document}

将目录页添加到书签而不是目录:

\hypertarget{tocpage}{}
\tableofcontents
\bookmark[dest=tocpage,level=-1]{Contents}

将“我的第一部分”更改为“第一部分:我的第一部分”:

\part*{My first part}
\addcontentsline{toc}{part}{Part I: My first part}

将书签上的“A 章”更改为“1 A 章”:

\usepackage[numbered]{bookmark}

相关内容