【发布时间】:2021-04-29 22:34:23
【问题描述】:
我们在 our course website 上使用 MathJax,它在 Jekyll 中实现并托管在 GitHub 页面上。对于小的、简单的方程,MathJax 效果很好,但我从来没有能够得到更复杂的方程来工作。我花了很多时间进行调查和实验,所以我想我终于可以在这里问了。
例如,下面的渲染失败:
$$
S_{i} =
\begin{cases}
X_{1} & \text{if i = 1}\\
\alpha \cdot X_{i} + (1 - \alpha) \cdot S_{i-1} & \text{if i $>$ 1}
\end{cases}
$$
Web 浏览器中呈现的输出实际上是空白的。
当我查看呈现的 html 时,我看到:
<p>
<span class="MathJax_Preview" style="color: inherit; display: none;"></span>
<span id="MathJax-Element-5-Frame" class="mjx-chtml MathJax_CHTML" tabindex="0" data-mathml="
<math
xmlns="http://www.w3.org/1998/Math/MathML" />" role="presentation" style="font-size: 113%; position: relative;">
<span id="MJXc-Node-149" class="mjx-math" aria-hidden="true">
<span id="MJXc-Node-150" class="mjx-mrow"></span>
</span>
<span class="MJX_Assistive_MathML" role="presentation">
<math
xmlns="http://www.w3.org/1998/Math/MathML">
</math>
</span>
</span>
<script type="math/tex" id="MathJax-Element-5">%
<![CDATA[ S_{i} = \begin{cases} X_{1} & \text{if i = 1}\\ \alpha \cdot X_{i} + (1 - \alpha) \cdot S_{i-1} & \text{if i $>$ 1} \end{cases} %]]>
</script>
</p>
我不是 LaTeX 专家,所以我经常在 https://www.codecogs.com/latex/eqneditor.php 或 OverLeaf 等在线编辑器中编写方程(或至少检查它们)。它们在那里渲染得很好。
我首先在 tex StackExchange 上问过这个问题 (link),但他们说这是题外话。
更新:我最终在 MathJax 用户组 (link) 上提出了这个问题,并收到了一个可行的解决方案,详细描述了 on GitHub。感谢大家的回复!
【问题讨论】:
-
听起来你也应该在github.com/mathjax/MathJax/issues 上搜索/询问,因为这是最权威的询问地点。鉴于支持the docs say 和
cases,您可能遇到了错误。如果是这样,那么询问 SO 不会为每个人解决问题 =) -
(同样在 LaTeX 注释中,块应以
\[打开并以\]关闭。双美元符号是纯 TeX 表示法,从技术上讲,LaTeX 不支持,因此使用正确的语法,这是一件小事,通常仍然是好的做法)
标签: javascript html markdown jekyll mathjax