章节/节标题内的超链接

章节/节标题内的超链接

我希望可以在章节/节标题中添加超链接。

梅威瑟:

 \documentclass[twoside]{book}

 \usepackage[pdftex,pagebackref=true]{hyperref}
 \begin{document}
 \chapter{documentation for link to Section 1}
 %%\chapter{documentation for link to \hyperlink{sec1}{Section 1}}

 \hypertarget{sec1}{}\section{Section 1 Reference}

 \hypertarget{sec2}{}\section{Section 2 Reference}
 documentation for \hyperlink{sec1}{Section 1}

 \end{document}

输出结果如下: 在此处输入图片描述

我们在第 1.2 节中看到了hyperlink第 1.1 节,但我希望在章节标题中也包含链接。当使用hyperlink(remove %% ) 添加第二章时,我收到错误消息:

Chapter 1.

Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding):
(hyperref)                removing `\<let>-command' on input line 6.


Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding):
(hyperref)                removing `\Hy@reserved@a' on input line 6.


Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding):
(hyperref)                removing `\@ifnextchar' on input line 6.

! Undefined control sequence.
\hyper@@link ->\let \Hy@reserved@a
                                   \relax \@ifnextchar [{\hyper@link@ }{\hyp...
l.6 ...on for link to \hyperlink{sec1}{Section 1}}

?
! Emergency stop.
\hyper@@link ->\let \Hy@reserved@a
                                   \relax \@ifnextchar [{\hyper@link@ }{\hyp...
l.6 ...on for link to \hyperlink{sec1}{Section 1}}

!  ==> Fatal error occurred, no output PDF file produced!

问题:如何获取章节(/部分)标题中的超链接。

答案1

我会使用\labels 然后\hyperref[<label>]{<text>}表示自定义文本或者甚至cleveref's \cref

\documentclass[twoside]{book}

\usepackage[pdftex,pagebackref=true]{hyperref}
\begin{document}
\chapter{documentation for link to \hyperref[sec1]{Section 1}}

\section{Section 1 Reference}\label{sec1}

\section{Section 2 Reference}\label{sec2}
documentation for \hyperref[sec1]{Section 1}
\end{document}

如果你要坚持\hyperlink你就必须坚持,\protect因为这是一个脆弱的命令。

\chapter{documentation for link to \protect\hyperlink{sec1}{Section 1}}

\hyperref上面的例子中你不需要使用 protect,因为它是一个强大的命令。请参阅脆弱命令和坚固命令之间有什么区别?深入解释脆弱命令与强大命令。

相关内容