我有两个用最新版本的Mathjax用Markdown编写的方程式(如下所示)。 (仅供参考:这些是我使用Jekyll创建的博客的。)当我将它们放在单独的段落中时,它们可以很好地渲染,但是当它们在同一段落中时,它们不能正确地渲染。
First equation is here \\(\mathbf{I}_n\\).
The next equation is here \\(D_j\\). More text.
First equation is here \\(\mathbf{I}_n\\). The next equation is here \\(D_j\\). More text.
问题似乎出在“ I”为粗体或下标。当我在两个方程式都位于同一段落中的代码中删除{I}周围的\mathbf
时,代码将按预期方式呈现:
当我删除“ I”或“ D”上的下标时,它也可以正确呈现:
为什么会这样,我该如何解决?
答案 0 :(得分:0)
事实证明,这是涉及Markdown和Mathjax的问题。 Markdown将下划线解释为斜体文本,而Mathjax希望将其下标。根据这些网站(1和2),Markdown首先进入下划线并将其转换为HTML <i> <\i>
标签。然后,Mathjax无法正确处理下划线。
解决这个问题的hack是用反斜杠将下划线转义:
First equation is here \\(\mathbf{I}\_n\\). The next equation is here \\(D\_j\\). More text.
,但这仅适用于inlineMath
方程(由\\( \\)
分隔的方程),而不适用于displayMath
方程(由\\[ \\]
分隔的方程)。因此,解决方案是:
_
替换为\_
。