您的位置:首页 > Web前端 > HTML

MarkDown写作之嵌入LaTeX和HTML

2015-11-11 23:15 726 查看
本系列文章由 @YhL_Leo 出品,转载请注明出处。

文章链接: /article/3664574.html

Markdown\text{Markdown} 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用。看到这里请不要被「标记」、「语言」所迷惑,Markdown 的语法十分简单。常用的标记符号也不超过十个,这种相对于更为复杂的HTML 标记语言来说,Markdown 可谓是十分轻量的,学习成本也不需要太多,且一旦熟悉这种语法规则,会有一劳永逸的效果。

它用简洁的语法代替排版,而不像一般我们用的字处理软件 Word 或 Pages 有大量的排版、字体设置。换句话说,它本身是不支持修改字体、字号与颜色等功能的,如果你想做出Word或Pages等高质量的文档,对于MarkDown来说是相当吃力的。对于完美主义者来说,并不满意,非要折腾一下下!

百度百科维基百科获知这家伙与LaTeX,HTML有着千丝万缕的联系。用过后面这两个工具或者语言的都知道:LaTex对于数学公式、符号的排版堪称完美,是生成高印刷质量的科技和数学类文档的首选(例如大量的学术期刊、会议文章,书籍等都采用LaTex编写);而HTML作为一种超文本标记语言,***不是很复杂,但功能强大,支持不同数据格式的文件镶入,这也是万维网(WWW)盛行的原因之一。

因此,如果想让我们的MarkDown文档做得更加高逼格、更加完美,让它复杂一丢丢,加入一些其他工具或语言的内容,又何尝不可。这么想的不止我一个人,MarkDown现如今已有很多衍生版本,我尝试过CSDNStackEditCmd简书的MarkDown版本,每一个拓展版本对于MarkDown原版本都进行了调整(如表格、脚注、内嵌HTML,内嵌LaTeX等)。于是现在可以看到拓展后的MarkDown功能越来强大,以至于最近看到几篇帖子关于RMarkDown:Markdown+R 可以替代 LaTeX 完成论文写作吗? 为什么Markdown+R有较大概率成为科技写作主流?这里就不多废话了,下面以最常用的三点进行简单阐述,如何通过引入LaTeX和HTML语言改善单一的MarkDown写作(以CSDN MarkDown为例,各个版本之间是有差异的,使用时需要斟酌)。



1 字体、颜色、字号\textbf{1 字体、颜色、字号}

MarkDown全篇是统一使用黑色微软雅黑字体,字号默认为3,而HTML却可以像Word那样灵活,引入大量字体包、颜色和字号,例如在MarkDown:

[code]Hello world
<font face="黑体"> 黑体: Hello world </font>
<font face="STCAIYUN"> STCAIYUN: hello world </font>
<font face="Terminal"> Terminal: Hello world </font>
<font face="Consolas"> Consolas: Hello world </font>

<font face="Consolas" size=3 color=#DC143C> Consolas,2,#DC143C: Hello world </font>
<font face="Consolas" size=4 color=(220, 20, 60)> Consolas,2,(220, 20, 60): Hello world </font>
<font face="Consolas" size=5 color=Crimson> Consolas,2,Crimson: Hello world </font>
<font face="Consolas" size=7 color=#0099ff> Consolas,2,Crimson: Hello world </font>


Hello world

黑体: Hello world

STCAIYUN: hello world

Terminal: Hello world

Consolas: Hello world

Consolas,2,#DC143C: Hello world

Consolas,2,Crimson: Hello world

Consolas,2,Crimson: Hello world

Consolas,2,Crimson: Hello world

font
主要包含三个参数:字体(
face
),字号(
size
)和颜色(
color
),顺序可调,也可缺省。
size
的可选范围为1-7,小于1的数值等价于1,超过7的数值等价于7);
color
的赋值既可以使用颜色名,例如
Blue
Black
Crimson
等,也可以使用十六进制的颜色值
#0000FF
#000000
#DC143C
等,如果想了解更多,可以阅读博客:CSDN-markdown编辑器语法——字体、字号与颜色



2 数学字符及公式\textbf{2 数学字符及公式}

再来看数学字符及公式,MarkDown中使用标识符
$$
$$$$
即可表示引入LaTeX语法,前者使用时不换行,即在所使用位置使用LaTeX的格式,后者会换行后居中,例如:

[code]$$
f(x;\mu,\sigma^2) = \frac{1}{\sigma\sqrt{2\pi}} e^{ -\frac{1}{2}\left(\frac{x-\mu}{\sigma}\right)^2 } \tag{1}
$$

where $\mu$ is the mean value, $\sigma^2$ is standard deviation.


f(x;μ,σ2)=1σ2π−−√e−12(x−μσ)2(1)
f(x;\mu,\sigma^2) = \frac{1}{\sigma\sqrt{2\pi}}
e^{ -\frac{1}{2}\left(\frac{x-\mu}{\sigma}\right)^2 } \tag{1}

where μ\mu is mean value, σ2\sigma^2 is standard deviation.

下面列出一些基本的LaTeX公式命令

2.1 部分希腊字母\textbf{2.1 部分希腊字母}

命令显示命令显示
\alpha
α\alpha
A
AA
\beta
β\beta
B
BB
\gamma
γ\gamma
\Gamma
\varGamma
Γ Γ\Gamma \ \ \varGamma
delta
δ\delta
\Delta
\varDelta
Δ Δ\Delta \ \ \varDelta
\epsilon
ϵ\epsilon
E
EE
\eta
η\eta
H
HH
\theta
θ\theta
\Theta
\varTheta
Θ Θ\Theta \ \ \varTheta
\kappa
κ\kappa
K
KK
\lambda
λ\lambda
\Lambda
\varLambda
Λ Λ\Lambda \ \ \varLambda
\mu
μ\mu
M
MM
\nu
ν\nu
N
NN
\pi
π\pi
\Pi
\varPi
Π Π\Pi \ \ \varPi
\rho
ρ\rho
P
PP
\sigma
σ\sigma
\Sigma
\varSigma
Σ Σ\Sigma \ \ \varSigma
\tau
τ\tau
T
TT
\phi
\varphi
ϕ φ\phi \ \ \varphi
\Phi
\varPhi
Φ Φ\Phi \ \ \varPhi
\omega
ω\omega
\Omega
\varOmega
Ω Ω\Omega \ \ \varOmega
2.2 部分运算符\textbf{2.2 部分运算符}

命令显示命令显示
\pm
±\pm
\mp
∓\mp
\times
×\times
\div
÷\div
\circ
∘\circ
\bullet
∙\bullet
\cdot
⋅\cdot
\cup
∪\cup
\cap
∩\cap
\subset
⊂\subset
\supset
⊃\supset
\subseteq
⊆\subseteq
\supseteq
⊇\supseteq
\leq
≤\leq
\geq
≥\geq
\propto
∝\propto
2.3 积分运算符\textbf{2.3 积分运算符}

命令显示命令显示
\sum
∑\sum
\int
∫\int
\sum_{i=1}^{N}
∑Ni=1\sum_{i=1}^{N}
\int_{a}^{b}
∫ba\int_{a}^{b}
\prod
∏\prod
\iint
∬\iint
\prod_{i=1}^{N}
∏Ni=1\prod_{i=1}^{N}
\iint_{a}^{b}
∬ba\iint_{a}^{b}
\bigcup_{i=1}^{N}
⋃Ni=1\bigcup_{i=1}^{N}
\bigcap_{i=1}^{N}
⋂Ni=1\bigcap_{i=1}^{N}
2.4 其他符号\textbf{2.4 其他符号}

命令显示命令显示
\cdotp
⋅\cdotp
\cdots
⋯\cdots
\ddots
⋱\ddots
\infty
∞\infty
\partial
∂\partial
\bot
⊥\bot
\hat{a}
a^\hat{a}
\tilde{a}
a~\tilde{a}
\bar{a}
a¯\bar{a}
\vec{a}
a⃗ \vec{a}
\dot{a}
a˙\dot{a}
\sqrt{a}
a√\sqrt{a}
\sqrt[3]{2}
a√3\sqrt[3]{a}
a^{3}
a3a^{3}
\frac{1}{a}
1a\frac{1}{a}
\lim_{x \to 0}
lima→0\lim_{a \to 0}
2.5 不得不说的矩阵和条件表达式\textbf{2.5 不得不说的矩阵和条件表达式}

分别举出一个例子,就应该可以对其完全领悟:

[code]$$ 
\left[ \begin{matrix}
	b_{1}&c_{1}& & & &0 \\
	a_{2}&b_{2}&c_{2}& & & \\ 
	 &a_{3}&b_{3}&\ddots& &  \\
	 & &\ddots&\ddots&c_{n-1} & \\
	0& & & &a_{n}&b_{n}
\end{matrix}\right] 
\left[ \begin{matrix}
	x_{1} \\
	x_{2} \\ 
	x_{3} \\
	\vdots\\
	x_{n}
\end{matrix}\right]  = 
\left[ \begin{matrix}
	d_{1} \\
	d_{2} \\ 
	d_{3} \\
	\vdots\\
	d_{n}
\end{matrix}\right]
\tag{2}
$$

$$ c'_i =
\begin{cases} 
\begin{array}{lcl}
  \cfrac{c_i}{b_i}                   & & ; i = 1 \\
  \cfrac{c_i}{b_i - a_i c'_{i - 1}}  & & ; i = 2, 3, \dots, n-1 \\
\end{array}
\end{cases}
\tag{3}$$
$$


⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢b1a20c1b2a3c2b3⋱⋱⋱cn−1an0bn⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎡⎣⎢⎢⎢⎢⎢⎢⎢x1x2x3⋮xn⎤⎦⎥⎥⎥⎥⎥⎥⎥=⎡⎣⎢⎢⎢⎢⎢⎢⎢d1d2d3⋮dn⎤⎦⎥⎥⎥⎥⎥⎥⎥(2)
\left[ \begin{matrix}
b_{1}&c_{1}& & & &0 \\
a_{2}&b_{2}&c_{2}& & & \\
&a_{3}&b_{3}&\ddots& & \\
& &\ddots&\ddots&c_{n-1} & \\
0& & & &a_{n}&b_{n}
\end{matrix}\right]
\left[ \begin{matrix}
x_{1} \\
x_{2} \\
x_{3} \\
\vdots\\
x_{n}
\end{matrix}\right] =
\left[ \begin{matrix}
d_{1} \\
d_{2} \\
d_{3} \\
\vdots\\
d_{n}
\end{matrix}\right]
\tag{2}

c′i=⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪cibicibi−aic′i−1;i=1;i=2,3,…,n−1(3) c'_i =
\begin{cases}
\begin{array}{lcl}
\cfrac{c_i}{b_i} & & ; i = 1 \\
\cfrac{c_i}{b_i - a_i c'_{i - 1}} & & ; i = 2, 3, \dots, n-1 \\
\end{array}
\end{cases}
\tag{3}

3 图片排版\textbf{3 图片排版}

以网络上的一段图文为例:

[code]<DIV ALIGN="CENTER">
<TABLE><CAPTION ALIGN="BOTTOM"><STRONG>Fig 1:</STRONG> Rigidly terminated string with the simplest frequency-dependent loss filter.  All loss factors (possibly including losses due to yielding terminations) have been consolidated at a single point and replaced by a one-zero filter approximation.</CAPTION>
![KarplusStrong](http://img.blog.csdn.net/20150925112421105)
</TABLE>
</DIV>






Fig 1: Rigidly terminated string with the simplest frequency-dependent loss filter. All loss factors (possibly including losses due to yielding terminations) have been consolidated at a single point and replaced by a one-zero filter approximation.

当然也可以简化只使用
<center>


[code]<center>
![Panda](http://img.blog.csdn.net/20151109165400641)
Panda
</center>







Panda

关于图片大小的显示问题,可以阅读博客:MarkDown图片大小问题

至于更复杂的操作,可以查阅更多资料。对于使用一些网页上不错的用法时,建议可以通过查看网页源码,找到对应的HTML源码,稍作调整即可应用到文档写作中:




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: