如果你曾经尝试写过有大量数学公式的博客文章,那我相信你一定因为数学公式渲染的问题 而略微痛过。而如果你尝试在 EPUB 里面排大量数学公式,额……朋友,你现在还好吗……
如果你只是单纯想在浏览器里面把一个公式渲染出来,其实这并不难。一方面我们有 MathML 这样的标准,另外一方面像是 MathJax、KaTeX 这类渲染库都能把事情做好。但 如果你稍微有那么一丢丢额外的追求,那么事情就会变得无比麻烦。
比如:Chromium 的 MathML 兼容性其实没你想象当中的好,Firefox 这边如果你把数学公式 排到表格里就会发现版面很容易就会变得乱七八糟。如果你想要换个字体,那 KaTeX 就 不是一个选项了,因为这个库是用自定义字体实现的部分排版功能,换了字体就只能渲染 出来一片白了。如果你的环境没有 JS 这么高级的东西,那 MathJax 可能也不会是一个好 的选项。