我正在尝试使用 pdfTeX 整合多个 PDF 文档,并使用 Adobe/Preview 的书签功能在侧边栏窗口中提供超链接结构。当我尝试对多个 PDF 文件进行多级缩进时,超链接结构“有效”,但某些链接指向太低!请查看以下内容:
\documentclass[11pt]{article}%
\usepackage{pdfpages}%
\usepackage{bookmark}%
\begin{document}%
\pdfbookmark[1]{Test 0}{test0}%
\includepdf[pages={-},link,linkname=test0,linkfit=FitH]{Testpdf0.pdf}%
\pdfbookmark[2]{Test 1}{test1}%
\includepdf[pages={-},link,linkname=test1,linkfit=FitH]{Testpdf1.pdf}%
\pdfbookmark[3]{Test 2}{test2}%
\includepdf[pages={-},link,linkname=test2,linkfit=FitH]{Testpdf2.pdf}%
\pdfbookmark[1]{Test 3}{test3}%
\includepdf[pages={-},link,linkname=test3,linkfit=FitH]{Testpdf3.pdf}%
\end{document}%
将您最喜欢的 PDF 文件用作 Testpdf 文件 0、1、2 和 3。编译此文件,然后在 Adobe Reader 或 Preview 中打开生成的文档并单击书签。Test 0 和 Test 3 的书签工作正常 - 您可以看到文档的顶部 1.5 厘米 - 这正是我想要的。但是,Test 1 和 Test 2 的书签太低,切断了每个页面的顶部。有什么想法可以解决此问题吗?(是故意的吗?)
我正在准备一份重要的文件,我不想惹恼我的读者(否则他们不会倾向于做出对我有利的决定)!
答案1
下面的应该可以解决这个问题,尽管我不确定它是否会破坏其他东西。
添加
\makeatletter
\renewcommand*{\pdfbookmark}[3][0]{%
\bookmark[level=#1,dest={#3.1}]{#2}% originally dest={#3.#1}
\hyper@anchorstart{#3.1}\hyper@anchorend% originally #3.#1
}
\makeatother
加载后进入文档前言bookmark
上述修改将超级目标的目标固定为#3.1
(级别 1),而书签级别仍然依赖于第一个(可选参数)并使用进行内部设置level=#1
。
这肯定是有意为之。1 级(和 0 级)书签通常构成整页样式的一部分(如\chapter
或\part
),而较低级别的书签则出现在页面中间(如\section
和\subsection
)。要了解为什么会出现这种情况,请包含showframe
包裹在您的序言中。第 2 级和第 3 级书签的超链接刚好指向文本块的第一行,由 制成的边框指示showframe
。
答案2
\pdfbookmark
超链接似乎瞄准可打印区域的顶部。
\usepackage{geometry}
\newgeometry{top=0cm}
帮我解决了。