删除“数学转变”

删除“数学转变”

错误

你好。当我使用 overleaf 写论文时,我遇到了如图所示的错误。有人能帮我吗?提前谢谢了。

答案1

我在这里找到了一个讨论(https://groups.google.com/forum/#!topic/comp.text.tex/SdbZxJ7zX38) 可以回答您的问题。

是的,允许在章节标题中使用数学符号。如果您认为数学符号会出现在 PDF 书签中,则该消息是一个警告。Adobe 指定书签文本必须限制为特定编码“PDFDocEncoding”,该编码不支持任何类型的不寻常符号,包括数学符号。因此,无论 hyperref 可以做什么,Acrobat Reader 都不会在书签中显示您的数学符号。在正文中,数学公式将正常显示。

简单来说,

  • 它在正文中看起来不错。
  • 书签中不会有您想要的符号或字符。
  • 可以按照以下建议避免此警告Hyperref-不允许使用令牌

    PDF 书签与目录不同。书签不是由 TeX 排版的:它们只是字符串,因此
    不允许使用数学或一般格式指令。

    避免警告的最简单方法是使用\texorpdfstring

    \subsection{The classes \texorpdfstring{$\mathcal{L}(\gamma)$}{Lg}} 在第二个参数中,您放置了尽可能最佳的近似值;毕竟书签只是查阅文档的指南。

答案2

禁止有关删除的 hyperref 警告数学转变节标题中的标记,我正在使用:

\makeatletter
\pdfstringdefDisableCommands{\let\HyPsd@CatcodeWarning\@gobble}
\makeatother

在我的案例中,这个\texorpdfstring解决方法是不可用的,因为章节标题是由kramdown LaTeX 转换器来自 Markdown 标题,并且 kramdown 仅允许 LaTeX 命令里面它是数学积木

Kramdown 将 Markdown 标题转换# Title with $$math$$\section{Title with $math$}。尝试重新定义$#1$(以下我能重新定义美元吗)而不是抑制警告:

\makeatletter
\pdfstringdefDisableCommands{\catcode`\$=\active\gdef$#1${\detokenize{#1}}
}
\makeatother

给了我一个错误:

! Missing control sequence inserted.
<inserted text> 
                \inaccessible 

相关内容