如何将目录中的章节编号设为非链接(超链接包)

如何将目录中的章节编号设为非链接(超链接包)

我正在使用 hyperref 包在输出文件中启用 PDF 链接和书签。我想实现以下行为([]表示可点击区域}

1 [The first chapter] .............. 3
2 [The second chapter] ............. 8

当使用linktoc=sectionhyperref 中的选项时,我可以实现这一点:

[1 The first chapter] .............. 3
[2 The second chapter] ............. 8

这并不是我真正想要的。

有人知道解决方案吗?

答案1

下面的补丁应该有效:

\usepackage{etoolbox}
\makeatletter
\def\process@contentsline#1#2{#1#2\hyper@linkstart{link}{\toc@link@target}\bgroup}
\patchcmd{\contentsline}{\hyper@linkstart{link}{#4}{#2}\hyper@linkend}{\def\toc@link@target{#4}\process@contentsline#2\egroup\hyper@linkend}{}{}
\patchcmd{\contentsline}{\hyper@linkstart{link}{#4}{#2}\hyper@linkend}{\def\toc@link@target{#4}\process@contentsline#2\egroup\hyper@linkend}{}{}
\makeatother

加载软件包后插入此代码hyperref。它修补了hyperref版本的contentsline宏(两次,因为要替换的部分出现了两次):

不是\hyper@linkstart直接调用创建可点击链接的命令,\process@contentsline而是调用新创建的宏。它直接输出两个参数,没有链接 - 这些参数创建节号。之后,它启动将包含内容行其余文本的链接。

在此处输入图片描述

相关内容