目前,我有以下设置,可以在 PDF 输出中选择/复制时返回 LaTeX 源代码。
我想知道是否可以重新定义 mathmode 或$
将其内容包装在 \copyable 命令中。
我希望的结果是,所有在数学模式下排版的文本都可以轻松地从生成的 PDF 中复制,而无需排版文档的人做更多的工作。
\documentclass{report}
\RequirePackage{accsupp}
\newcommand*{\copyable}[1]{%
\BeginAccSupp{%
ActualText=\detokenize{#1},%
method=escape,
}%
#1%
\EndAccSupp{}%
}
\begin{document}
\copyable{\( a-b \ne c+1\)}
\end{document}
评论后编辑- 我暂时想出了这个作为内联数学和显示数学的解决方法。
\cf
对于“可复制公式”。
\protected\def\cf{\@ifnextchar[\@copymathDisplay\@copymathInline}
\def\@copymathDisplay[#1\]{\copyable{\[#1\]}}
\def\@copymathInline(#1\){\copyable{\(#1\)}}
但是,我希望它在文档中使用数学模式的所有地方都生效。例如,在以下环境中使用时也会生效eqnarray
。