我有一个文档,其结构如下:
\setupinteraction[state=start]
\placebookmarks[chapter,section,subsection][chapter,section][force=yes]
\setupinteractionscreen[option=bookmark]
\startfrontmatter
\startstandardmakeup
\starttitle[title=Contents]
\placecontent
\stoptitle
\stopstandardmakeup
\stopfrontmatter
\startbodymatter
\startchapter[title=Chapter1]
Unimportant content...
\stopchapter
\stopbodymatter
到目前为止,还没有问题。但有一件事让我很困扰:在 Sumatra PDF 的书签窗口中,书签从第 1 章开始。有没有办法将书签也插入到目录中?
假设您位于文档的第 30 页并想要转到目录:现在您可以手动滚动到文档顶部,或者单击第 1 章的书签,然后再次手动向上滚动一页或几页。因此,我们的想法是创建一个目录书签,这样您就可以单击它并直接重定向到目录。我不需要在目录中有目录条目(可以说是框中的框,另一方面,了解这一点会很有趣),而只需要 PDF 文件中的书签。
我尝试在 standardmakup 环境中的几个地方以及 frontmatter 中的构成之前添加 \bookmark[]{TOC},但 TOC 仍然没有出现在 PDF 书签中。
我发现 standardmakeup 不计算页数,或者至少不将其打印在文档中。我不知道 makeup 是否与此有关,但如果有,是否有办法以某种方式手动为 makeup 中的标题创建书签?
答案1
直接引用源文件strc-bmk.mkiv
(更改格式):
书签是一项非常依赖浏览者的功能。它们主要用作附加目录,因此与列表直接相关。
仅当启用交互时才会将书签列表添加到文档中。给定的列表已添加书签,第二个参数指定打开的书签树。
\placebookmarks [chapter,section,subsection,mylist] [chapter]
因此,根据这个描述,我改变了这条线
\placebookmarks[chapter,section,subsection][chapter,section][force=yes]
在你的例子中
\placebookmarks[chapter,title,section,subsection][chapter,title,section][force=yes]
因为您的目录是title
,这对我来说很管用。我正在以 形式查看 PDF evince
,因为我当前的机器上没有sumatra
,但我认为两者的结果是一样的。