我想做超链接为文档中所有可用的层级生成书签,但仅限于生成的 PDF。但是,对于目录本身(即打印在文档开头的目录),我希望仅显示前 2 或 3 个层级,以使其更紧凑。
但据我所知,更改 PDF 书签深度的唯一方法是使用命令更改目录的深度\setcounter{tocdepth}{x}
。
是否有其他方法来控制这个深度,即允许对目录和 PDF 书签使用不同的值?
编辑:这是一个最小示例。默认情况下,目录和 PDF 书签中均显示 3 个层次结构。通过取消注释第 4 行,可以将深度限制为第 2 级,但这适用于目录和 PDF 书签。我希望它仅适用于目录,并在 PDF 书签中保留第 3 级。
\documentclass{article}
\usepackage{hyperref}
\begin{document}
%\setcounter{tocdepth}{2}
\tableofcontents
\section{This should be in both the TOC and bookmarks}
\subsection{This too}
\subsubsection{But this should appear only in the bookmarks}
\subsubsection{and this also}
\end{document}
答案1
bookmarksdepth
您可以使用键值控制书签深度,就像控制目录深度一样:
\usepackage{hyperref}% http://ctan.org/pkg/hyperref
\hypersetup{bookmarksdepth=3}
bookmark
也适应了这一点,以便您可以使用
\usepackage{bookmark}% http://ctan.org/pkg/bookmark
\bookmarksetup{depth=3}
答案2
计数器tocdepth
有(除非某些包摆弄分段命令并改变默认行为)无方位写入文件的内容。但是,在制度下,它确实(默认情况下)对写入 pdf 书签的内容.toc
有影响。hyperref
tocdepth
因此,您原来的问题也可以通过当时的临时修改来解决\tableofcontents
。
\setcounter{tocdepth}{2}
\tableofcontents
\setcounter{tocdepth}{3}
例如。