如何获取书签和索引(目录)以及指向每个部分的链接

如何获取书签和索引(目录)以及指向每个部分的链接

我想制作一本没有列出章节的书。有一个索引(也不希望在索引中列出章节)并在文件 .pdf 中有书签。问题是我在书签中出现了两次章节。我正在使用包,bookmark因为hyperref不支持\pagenumbering{gobble}并使用此命令来抑制页面编号并在之后重新开始tableofcontents

我可以做些什么来获得书签,其中部分仅出现一次,并获取带有每个部分链接的索引(目录)?

平均能量损失

\documentclass{book} 
...
\usepackage{bookmark}

\begin{document}
  \pagenumbering{gobble}
  \chapter*{Presentation} %Presentation of the book
  \bookmark[page=2,level=0]{Presentation} 

\tableofcontents

 \pagenumbering{arabic}
 \setcounter{page}{4}

  \chapter*{Test 1}
  \bookmark[page=4,level=0]{Test 1} % places the first bookmarks
  \addcontentsline{toc}{chapter}{Test 1} % places the second bookmarks

\end{document}

在此处输入图片描述

答案1

一些评论:

  • \addcontentsline{toc}{...}{...}已添加书签。
  • 我已经禁用了页面的页面锚点,以\pagenumbering{gobble}避免与不同页面的页面目标发生冲突,但目标名称相同,因为\thepage是空的。
  • \pdfbookmark可以在这里使用它来自动设置锚点并避免明确的页码规范。
  • 另外,我还添加了\cleardoublepage/以确保执行或\newpage的页面正确。\pagenumbering\pdfbookmark

示例文件:

\documentclass{book}
\usepackage{hyperref}
\usepackage{bookmark}

\begin{document}
  % ...
  \cleardoublepage
  \pdfbookmark{Presentation}{Presentation}
  \pagenumbering{gobble}
  \hypersetup{pageanchor=false}
  \chapter*{Presentation} %Presentation of the book

  \tableofcontents

  \newpage
  \hypersetup{pageanchor=true}
  \pagenumbering{arabic}
  \setcounter{page}{4}

  \chapter*{Test 1}
  \addcontentsline{toc}{chapter}{Test 1} % places the second bookmarks

\end{document}

相关内容