我尝试将一些文本隐藏到 pdftooltip 中,到目前为止运行良好(当我使用 TeXLive 2011 时)。
我现在升级到了 MacTeX 2014,如果这个隐藏文本中有化学式,我就会收到错误。
最小示例:
\documentclass[11pt]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{hyperref}
\usepackage[pdftex]{graphicx}
\usepackage{color}
\usepackage[T1]{fontenc}
\usepackage[version=3]{mhchem}
\usepackage{pdfcomment}
\newcommand{\weg}[1]{\pdftooltip{\textcolor{red}{\tiny\bfseries{}w}}{#1}}
\begin{document}
\ce{CO2}
the following text is hidden: \weg{hidden text \ce{CO2}}
\end{document}
我正在使用 MacTeX 2014 并出现以下错误:
./MinimalExample.tex:19: Undefined control sequence. \mhchem@ce ...ate
{s}\chardef \mhchem@ce@substate
=0\relax \mhchem@ce@result... l.19 ...text is hidden: \weg{hidden text
\ce{CO2}}
我该如何解决这个问题?
编辑:使用 TeXLive 2011 时,没有错误消息,但化学式未正确写在 pdftooltip 中,例如 \ce{ZrO2} 变成了 *"3222378 * 。现在使用 Josef 的解决方案,至少公式的字符似乎可以正确打印在工具提示中。
答案1
联系mhchem
!的维护者 Martin Hensel 可能是个好主意pdfcomment
。 已经有一段时间没有更新了。 所以,我猜问题是在mhchem
!的更新中引入的。
暂时的解决方法是,只需将其添加\pdfstringdefDisableCommands{\let\ce\relax}
到您的序言中即可。这不是解决方案,但您的文档至少可以编译。