在Hexo使用Latex写公式
最近在看《线性代数》,想用Markdown
记一些笔记,要画不少公式,Typera
完美兼容Latex
, 一直用得很爽~~~直到我想把笔记移植到我的Hexo博客上时……
Latex的安装
第一步就挂了……copy
过来发现全是代码,根本没有转化成公式,猜到会有引擎这么个玩意儿,就去查怎么安装,推荐比较多的是用Mathjax
引用js
文件就可以的,这里给个官方的说明文档:Mathjax
我知道你不会傻傻去看英文文档的,那就简单点,直接给重点吧:
<script type="text/x-mathjax-config"> |
Config
里配置的是行内公式的格式,用\(
和\)
的话需要对\
转义(转义的坑有很多,后面会提到)
不过这里有个问题path-to-mathjax
这个路径是你的Mathkax.js
文件的位置,然而你并没有这个文件,所以我偷个懒,直接用了别人的~ 把这里的src
改成https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML
。
把这段代码拷到你的theme
文件夹里公共的配置js
的文件里,一般来说就是casper
目录下的post.ejs
或head.ejs
文件里。
后来在文档里找到了需要转义的问题根源:
Another source of difficulty is when MathJax is used in content management systems that have their own document processing commands that are interpreted before the HTML page is created. For example, many blogs and wikis use formats like Markdown to allow you to create the content of your pages. In Markdown, the underscore is used to indicate italics, and this usage will conflict with MathJax’s use of the underscore to indicate a subscript. Since Markdown is applied to the page first, it will convert your subscript markers into italics (inserting
<i>
or<em>
tags into your mathematics, which will cause MathJax to ignore the math).
常用的公式
学一点记一点,以后再用到也就免得再去查了
下标的书写
在纯html
的任何text
性质的文本中,可以直接这样写:
$ A_1 $
或$ A_{12} $
展示效果:
$ A_1 $ 、$ A_{12} $
注意有时候,_
默认作为Markdown
的斜体语法字符,会出现这样的情况:
$ A_1A_{a_2} $
展示效果:
$ A1A{a_2} $
很明显出了问题,查看了一下网页源代码,才发现,
_
被Markdown
解析成了<em>
斜体标识$ A<em>1A</em>{a_2} $
当出现
_{
的组合时,这个_
之前若有未经转义的_
,Markdown
会将这两个_
解析成斜体标识,对前面的_
进行转义就可以了:$ A\_1A_{a_2} $
不过遇到复杂的式子实在分不清要对哪一个进行转义,所以目前复杂的式子我是对所有
_
都进行转义的
上标的书写
上标用^
符号,不涉及转义,如:
$ n^2 $
或$ n^{2a} $
展示效果:
$ n^2 $、$ n^{2a} $
比较符号的书写
常用的比较符号包括:大于、小于、等于、约等于、不等于、大于等于、小于等于,大于、小于、等于可以直接用键盘输入,其它的书写方式如下:
$ \thickapprox $
、$ \ne $
、$ \ge $
、$ \le $
展示效果:
$ \thickapprox $、 $ \ne $ 、$ \ge $、$ \le $
常用函数的书写
累加(求和)函数:
$ \sum $
、$ \sum_{i=1}^n $
展示效果:
$ \sum $、$ \sum_{i=1}^n $
注意:
如果想要展现成上下结构,需要写成单行模式:$$ \sum_{i=1}^n $$
$$ \sum_{i=1}^n $$
以下同理
累乘(求积)函数:
$ \prod $
、$ \prod_{i=1}^n $
展示效果:
$ \prod $、$ \prod_{i=1}^n $
极限:
$ \lim_{x \rightarrow 0}\frac{\sin x}{x}=1 $
效果展示:
$ \lim_{x \rightarrow 0}\frac{\sin x}{x}=1 $
分数形式:
$ \frac ab $
、$ \frac {a+b}{c+d} $
效果展示:
$ \frac ab $、$ \frac {a+b}{c+d} $
特殊格式语法的书写
线性代数常用公式:矩阵、行列式
矩阵:
\left [
\begin{matrix}
n\_{11} & n\_{12} \\\\
n\_{21} & n\_{22}
\end{matrix}
\right ]效果展示:
$ \left [ \begin{matrix} n_{11} & n_{12} \\ n_{21} & n_{22} \end{matrix} \right ] $