![从 PDF 书签中删除脚注](https://linux22.com/image/264091/%E4%BB%8E%20PDF%20%E4%B9%A6%E7%AD%BE%E4%B8%AD%E5%88%A0%E9%99%A4%E8%84%9A%E6%B3%A8.png)
我有
\section{My Title\footnote{ My Footnote 1}\footnote{My Footnote 2}}
pdfLatex 和 Latex 都会自动从我的节标题创建书签。这就是我想要的。但它们还包括脚注。因此书签的示例是
"My Title My foootnote 1 My Footnote 2"
.但我只想要
"My Title"
我如何实现这个目标?
答案1
您可以轻松地使用可选参数\section
在目录和书签中使用不同的标题文本:
\section[My Title]{My Title\footnote{ My Footnote 1}\footnote{My Footnote 2}}
答案2
假设您使用hyperref
您可以\footnote
通过在 preabmle 中添加以下内容来禁用所有 pdf 字符串的命令:
\pdfstringdefDisableCommands{%
\def\footnote#1{}%
}
完整示例:
\documentclass{article}
% \footnote is a fragile command so can cause troubles in moving
% arguments like in \section. Let's make it robust:
\usepackage{etoolbox}
\robustify{\footnote}
% load hyperref and disable the \footnote command in bookmarks:
\usepackage{hyperref}
\pdfstringdefDisableCommands{%
\def\footnote#1{}%
}
\begin{document}
\section{My Title\footnote{ My Footnote 1}\footnote{My Footnote 2}}
\end{document}
答案3
另一种可能性是使用\texorpdfstring
包中的宏hyperref
。
此宏切换 PDF 文件书签中使用的文本。
\texorpdfstring{text that will appear in the document}{text used in the bookmark}