![向 Hyperref 讲解 \char](https://linux22.com/image/338849/%E5%90%91%20Hyperref%20%E8%AE%B2%E8%A7%A3%20%5Cchar.png)
如果我\char
在章节标题中使用,hyperref 会给出警告或错误:
这会破坏编译:
\subsection{Some thoughts about {\char`\\} {\char`\^} {\char`\$} {\char`\~} {\char`\%} {\char`\&} {\char`\{} {\char`\}} {\char`\_} {\char`\#}}
./minimal.tex:9: Argument of \PU\^ has an extra }. <inserted text> \par
编译通过,但出现警告:
\subsection{Some thoughts about {\char`\\} {\char`\$} {\char`\%} {\char`\&} {\char`\{} {\char`\}} {\char`\_} {\char`\#}}
Package hyperref Warning: Token not allowed in a PDF string (Unicode): (hyperref) removing `\char' on input line 9.
我可以教授 hyperref 有关\char
,以便将其放入Some thoughts about \^&~%&{}_#
我的 PDF 书签中吗?
梅威瑟:
\documentclass{article}
\usepackage{fontspec}
\usepackage[bookmarks=true]{hyperref}
\begin{document}
\subsection{Some thoughts about {\char`\\} {\char`\^} {\char`\$} {\char`\~} {\char`\%} {\char`\&} {\char`\{} {\char`\}} {\char`\_} {\char`\#}}
\end{document}
我知道Hyperref 警告 - PDF 字符串中不允许使用令牌和\texorpdfstring
命令,但同样\texorpdfstring
感到困惑\char
。我还知道引用单个字符的其他方法(\textasciitilde
等等),但如果可能的话,我宁愿避免使用它们:我很难记住它们,而且我的文档的某些部分会自动从其他格式导出。
答案1
使用texorpdfstring
提供 的替代定义hyperref
。要使插入符号显示在 PDF 书签中,请使用\^{}
。
\documentclass{article}
\usepackage[bookmarks]{hyperref}
\begin{document}
\section{\texorpdfstring{\char`\^}{\^{}}}
\end{document}