我有一个包含 epsilon 的章节标题。此外,我还使用“hyperref”包在我的 PDF 文档中创建链接。
编译时,我收到一个奇怪的警告,PDF 字符串中不允许使用数学符号,例如Token not allowed in a PDF string (PDFDocEncoding): (hyperref) removing \varepsilon on input line 6.
但是,如果我打开编译后的 PDF,则没有明显的错误,并且所有链接都可以点击。我是否遗漏了什么,或者我可以忽略此警告吗?还有其他方法可以实现相同的结果吗?
\documentclass{article}
\usepackage{hyperref}
\begin{document}
\tableofcontents
\section{$\varepsilon$SOA}
Text about $\varepsilon$SOA.
\end{document}
提前致谢!
答案1
选项
pdfencoding=auto
或unicode
启用带有更多符号的 Unicode 书签。选项
psdextra
定义了很多数学符号,但是它缺少了\varepsilon
。然后
\pdfstringdefDisableCommands
可以用来定义命令的书签替换字符串。
完整示例:
\documentclass{article}
\usepackage[pdfencoding=auto, psdextra]{hyperref}
\pdfstringdefDisableCommands{\def\varepsilon{\textepsilon}}
\usepackage{bookmark}% faster updated bookmarks
\begin{document}
\tableofcontents
\section{$\varepsilon$SOA}
Text about $\varepsilon$SOA.
\end{document}
math shift
如果还应删除有关警告,则\texorpdfstring
有助于:
\section{\texorpdfstring{$\varepsilon$}{\textepsilon}SOA}