在网页或blog中引用数学公式是一件痛苦的事情。经过几番在网上的查找,算是勉强找到了一个借鉴方法。借用强大的MathJax + Latex
就可以解决这个问题。废话少说,先来一个例子
更多例子
下面是在段中插入公式:
1
|
|
段内插入LaTeX代码是这样的:$\exp(-\frac{x^2}{2})$,试试看看吧
1
|
|
在段中插入公式,效果如何
更多更多例子
1 2 3 4 5 |
|
公式显示如下: 注意:$$前一定要有空行
或者在一行里:
1
|
|
公式显示如下:
本文开头的例子
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
显示如下:
错误的例子
这个本来是MathJax默认的方式,但是在kramdown中无法显示
1
|
|
[ J\alpha(x) = \sum\limits{m=0}^\infty \frac{(-1)^m}{m! \, \Gamma(m + \alpha + 1)}{\left({\frac{x}{2}}\right)}^{2 m + \alpha} ]
krmadown
本文主要用到了krmadown,使用很简单,下载安装kramdown,在后在_config.yml文件里面配置即可
-
kramdown主页
kramdown -
配置kramdown
在_config.yml文件里
1
|
|
链接
其实我主要是借鉴了下面两篇文字,具体如何配置,也可以在这两篇文字中找到。
MathJax加载
按照“如何加入公式”的方法加入脚本,会产生一个问题,无论这个页面有没有数学公式,都会去加载MathJax脚本,而加载这个脚本的速度非常慢。那么如何控制,哪些页面加入这个脚本,哪些页面不需要加?
首先,我在post文档中加入了一个变量math
,
1 2 3 4 5 6 7 8 |
|
然后在source/_includes/custom/head.html
加入脚本相关内容时,加入了 {% if page.math == true %}...{% endif %}
语句进行判断,完整的如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
|
这样,在post的markdown中文件中,如果你声明math
为true
,那么就会在最后生成的html文件中加上这段加载MathJax的代码;如果不声明,或在声明为空或false
,就不会添加加载MathJax的代码。
还有一个问题,就是在博客首页生成的pinboard中,如果有公式的话,就无法正常显示了。如果需要在首页的pinboard中显示公式,在source/index.html
文件中加入math
的声明。
1 2 3 4 |
|
关于Latex
本人不会Latex,那么怎么生成Latex格式的公式呢?
- 一是可以在线生成:Online LaTeX Equation Editor
- 二是使用mathtype。
在mathtype的Preferences
->Cut and Copy preferences...
选中MathML to Tex
。编辑公式后拷贝,粘贴到记事本,就可以得到Latex格式的公式。
常用latex符号
特殊字符
功能 | 语法 | 显示 |
---|---|---|
标准函数 | \sin x + \ln y +\operatorname{sgn} z |
$\sin x + \ln y +\operatorname{sgn} z$ |
其他 | \nabla \partial dx |
$\nabla \partial dx$ |
集 | \forall x\not\in\varnothing\subseteq A\cap B\cup \exists \{x,y\} \times C |
$\forall x \not\in \varnothing \subseteq A\cap B\cup \exists {x,y} \times C$ |
逻辑 | p\wedge \bar{q} \rightarrow p\vee \bar{q} \Rightarrow r |
$p\wedge \bar{q} \rightarrow p\vee \bar{q} \Rightarrow r$ |
根号 | \pm \sqrt{2}\approx\pm 1.4 |
$\pm \sqrt{2}\approx\pm 1.4$ |
\sqrt[n]{x} |
$\sqrt[n]{x}$ | |
等号 | \sim \simeq \cong \le \ge \equiv \approx \ne |
$\sim \ \simeq \ \cong \ \le \ \ge \ \equiv \ \approx \ \ne$ |
几何 | \angle \perp \| |
$\angle \perp \|$ |
特殊 | \oplus \otimes \mp \hbar \dagger \ddagger \star \circ \cdot \bullet |
$\oplus \otimes \mp \ \hbar \dagger \ddagger \star \circ \cdot \bullet$ |