受保护的脚注导致超链接错误

受保护的脚注导致超链接错误

要在某一节中使用脚注,必须使用 protect 关键字来避免错误……然后当使用 hyperref 包时,您会收到另一个错误:

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

使用 MWE:

\documentclass{book}

\usepackage{hyperref}
\scrollmode


\begin{document}

\chapter{test}
\section{Test Section\protect\footnote{my footnote}}
asdfasdfsadf


\end{document}

任何想法如何解决这一问题?

答案1

一种方法是使用可选参数,例如:

\section[Test section]{Test Section\footnote{my footnote}}

那你就不需要保护任何东西了。

答案2

使用\texorpdfstring在您的章节标题中如下:

\documentclass{book}

\usepackage{hyperref}
\scrollmode

\begin{document}

\chapter{test}
\section{\texorpdfstring{Test Section\protect\footnote{my footnote}}{Test Section}}
asdfasdfsadf

\end{document}

相关内容