本篇博客转自xiahouzuoxin

自从使用Markdown以来,就开始一直使用Markdown+Github在写文章,整理自己的所学所思。本文亦是通过这种方式完成的。

然而,Markdown自由书写的特性很好,唯独遇到数学公式时就要煞费苦心——每次都是先使用Latex书写(在线的Latex编辑器参考[1]),然后保存为图片,使用img标签进行引用,当公式很多的时候稍显复杂。

本文的方法使用html的语法,调用[1]的公式生成API,在线生成Latex数学公式,免去将公式保存为图片的麻烦。当然,弊端也是有的,公式太多,可能会造成刷新比一般的网页慢一些。

方法一:使用Google Chart的服务器

<img src="http://chart.googleapis.com/chart?cht=tx&chl= 在此插入Latex公式" style="border:none;">

一个例子:

<img src="http://chart.googleapis.com/chart?cht=tx&chl=\Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}" style="border:none;">

公式显示结果为:

适用了下,Google Chart服务器的响应速度还可以,但据说可能复杂一些的Latex公式可能无法解析(参考[2])。

方法二:使用forkosh服务器

forkosh上提供了关于Latex公式的一份简短而很有用的帮助,参考[1]和[3].

使用forkosh插入公式的方法是:

<img src="http://www.forkosh.com/mathtex.cgi? 在此处插入Latex公式">

给个例子,

<img src="http://www.forkosh.com/mathtex.cgi? \Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}">

显示结果为:

方法三:使用MathJax引擎

大家都看过Stackoverflow上的公式吧,漂亮,其生成的不是图片。这就要用到MathJax引擎,在Markdown中添加MathJax引擎也很简单,

<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default"></script>

然后,再使用Tex写公式。$$公式$$表示行间公式,本来Tex中使用\(公式\)表示行内公式,但因为Markdown中\是转义字符,所以在Markdown中输入行内公式使用\\(公式\\),如下代码:

$$x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}$$
\\(x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\\)

分别显示结果(行间公式):

x=b±b24ac2a

行内公式: x=b±b24ac2a


参考


[1] http://www.forkosh.com/mathtextutorial.html

[2] http://www.ruanyifeng.com/blog/2011/07/formula_online_generator.html

[3] http://www.forkosh.com/mathtex.html

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐