与实际tex的差异

由于mathjax是为web渲染的,而tex是一个打印布局引擎,因此以合理的方式支持tex的某些部分是有自然限制的。因此,“真正的”tex/latex系统和mathjax的tex输入之间存在一些差异。

首先,tex输入处理器实现 only tex和latex的数学模式宏,而不是文本模式宏。mathjax希望使用标准html标记来处理页面文本的格式化;mathjax只处理数学。例如,mathjax没有实现 \emph\begin{{enumerate}}...\end{{enumerate}} 或其他文本模式宏或环境。必须使用HTML来处理此类格式化任务。如果你需要一个从 Latex 到html的转换器,你应该考虑 other options .

这条规则有两个例外。首先,MathJax支持 \ref 数学模式之外的宏。其次,MathJax支持一些在数学模式中添加文本的宏(例如 \text{{}} )以及 $...$\(...\) 要切换回数学模式,请使用 \$ 为了躲避一个美元符号。不过,通常情况下,MathJax不会在这些文本块内执行其他宏。所以,举个例子, \text{{some \textbf{{bold}} text}} 将生成输出“Some\textbf{BOLD}Text”,而不是“Some bold 文本“。

有一个扩展(版本3.1中的新增)在 \text{{}} 宏和其他生成文本模式材料的程序。见 文本宏 有关详细信息的文档。

其次,mathjax中的一些特性可能会受到一定的限制。例如,mathjax只实现 array 环境的序言;即,只有 lrc| 旁边的字符 : 对于虚线---其他的都被忽略。