【发布时间】:2015-04-16 18:43:24
【问题描述】:
我有一些即时生成的公式。 Mathjax 不会将双重否定变为肯定。例如,我想让“1 - - 1”变成“1 + 1”。 “1 + - 1 = 1 - 1”也是如此。
有没有办法强制 MathJax 这样做?
当然,我可以在代码中执行此步骤,但这会使我的公式模板更难看。
谢谢
【问题讨论】:
标签: mathjax
我有一些即时生成的公式。 Mathjax 不会将双重否定变为肯定。例如,我想让“1 - - 1”变成“1 + 1”。 “1 + - 1 = 1 - 1”也是如此。
有没有办法强制 MathJax 这样做?
当然,我可以在代码中执行此步骤,但这会使我的公式模板更难看。
谢谢
【问题讨论】:
标签: mathjax
MathJax 不是计算机代数系统,它只是一个数学排版系统。它不了解它排版的数学,因此无法对方程进行转换。你必须自己做。
可以为 TeX 输入处理器注册预过滤器,因此您可以使用该方法在 MathJax 评估之前修改 TeX 代码。例如,放置
<script type="text/x-mathjax-config">
MathJax.Hub.Register.StartupHook("TeX Jax Ready",function () {
MathJax.InputJax.TeX.prefilterHooks.Add(function (data) {
data.math = data.math.replace(/- *-/g,"+")
.replace(/- *+|+ *-/g,"-");
});
});
</script>
之前加载 MathJax.js 本身的脚本。这可能会满足您的需求。
【讨论】: