![PDF 页面标签](https://linux22.com/image/312092/PDF%20%E9%A1%B5%E9%9D%A2%E6%A0%87%E7%AD%BE.png)
是否可以“正确”地设置 pdf 中的页面标签?我的 latex 文档中的页面编号为 1-x。我希望页面标签与实际页码相对应(如此处所述:http://pdf.editme.com/pdfua-PageLabels)。
因此,第一页是“封面”,第 2-5 页(包括目录等)使用罗马数字编号(i、ii、iii 等),第 6 页至末尾使用阿拉伯数字编号。我该如何实现?
答案1
该软件包hyperref
还添加了对 PDF 页面标签的支持。它用于\thepage
此目的。
封面可以使用以下方式标记\thispdfpagelabel
:
\documentclass{report}
\usepackage{hyperref}
\begin{document}
\begin{titlepage}
\hypersetup{pageanchor=false}
\thispdfpagelabel{Cover}
\Huge Cover
\end{titlepage}
\pagenumbering{roman}
\tableofcontents
\listoffigures
\listoftables
\pagenumbering{arabic}
\chapter{Abc}
\end{document}
该示例还禁用了封面页的页面标签,因为不太可能需要它(例如,索引条目需要页面锚点)。否则封面页的页面锚点 ( 1
) 将与第一章页面的页面锚点(也是1
)发生冲突。
如果封面页不打印页码,则\thepage
可以重新定义,例如,使用Cover-
作为前缀。使用唯一的\thepage
页面锚点不需要禁用,例如:
\documentclass{book}
\usepackage{hyperref}
\begin{document}
\begingroup
\renewcommand*{\thepage}{Cover-\arabic{page}}
\pagestyle{empty}
\Huge Cover
\cleardoublepage
\endgroup
\frontmatter
\tableofcontents
\listoffigures
\listoftables
\mainmatter
\chapter{Abc}
\end{document}
答案2
正如 Heiko 所说,只需使用hyperref
包裹。
例子:
\documentclass{report}
\usepackage[pdfpagelabels,hyperindex,hyperfigures]{hyperref}
\begin{document}
Hola. This is my cover page
\pdfbookmark[0]{Cover}{initialpage}
\end{document}
输出: