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现如今已有很多衍生版本,我尝试过CSDN,StackEdit,Cmd,简书的MarkDown版本,每一个拓展版本对于MarkDown原版本都进行了调整(如表格、脚注、内嵌HTML,内嵌LaTeX等)。于是现在可以看到拓展后的MarkDown功能越来强大,以至于最近看到几篇帖子关于RMarkDown:Markdown+R 可以替代 LaTeX 完成论文写作吗? 为什么Markdown+R有较大概率成为科技写作主流?这里就不多废话了,下面以最常用的三点进行简单阐述,如何通过引入LaTeX和HTML语言改善单一的MarkDown写作(以CSDN MarkDown为例,各个版本之间是有差异的,使用时需要斟酌)。
1 字体、颜色、字号\textbf{1 字体、颜色、字号}
MarkDown全篇是统一使用黑色微软雅黑字体,字号默认为3,而HTML却可以像Word那样灵活,引入大量字体包、颜色和字号,例如在MarkDown:
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
2 数学字符及公式\textbf{2 数学字符及公式}
再来看数学字符及公式,MarkDown中使用标识符
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 部分希腊字母}
2.2 部分运算符\textbf{2.2 部分运算符}
2.3 积分运算符\textbf{2.3 积分运算符}
2.4 其他符号\textbf{2.4 其他符号}
2.5 不得不说的矩阵和条件表达式\textbf{2.5 不得不说的矩阵和条件表达式}
分别举出一个例子,就应该可以对其完全领悟:
⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢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 图片排版}
以网络上的一段图文为例:
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.
当然也可以简化只使用
Panda
关于图片大小的显示问题,可以阅读博客:MarkDown图片大小问题。
至于更复杂的操作,可以查阅更多资料。对于使用一些网页上不错的用法时,建议可以通过查看网页源码,找到对应的HTML源码,稍作调整即可应用到文档写作中:
文章链接: /article/3664574.html
Markdown\text{Markdown} 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用。看到这里请不要被「标记」、「语言」所迷惑,Markdown 的语法十分简单。常用的标记符号也不超过十个,这种相对于更为复杂的HTML 标记语言来说,Markdown 可谓是十分轻量的,学习成本也不需要太多,且一旦熟悉这种语法规则,会有一劳永逸的效果。
它用简洁的语法代替排版,而不像一般我们用的字处理软件 Word 或 Pages 有大量的排版、字体设置。换句话说,它本身是不支持修改字体、字号与颜色等功能的,如果你想做出Word或Pages等高质量的文档,对于MarkDown来说是相当吃力的。对于完美主义者来说,并不满意,非要折腾一下下!
从百度百科,维基百科获知这家伙与LaTeX,HTML有着千丝万缕的联系。用过后面这两个工具或者语言的都知道:LaTex对于数学公式、符号的排版堪称完美,是生成高印刷质量的科技和数学类文档的首选(例如大量的学术期刊、会议文章,书籍等都采用LaTex编写);而HTML作为一种超文本标记语言,***不是很复杂,但功能强大,支持不同数据格式的文件镶入,这也是万维网(WWW)盛行的原因之一。
因此,如果想让我们的MarkDown文档做得更加高逼格、更加完美,让它复杂一丢丢,加入一些其他工具或语言的内容,又何尝不可。这么想的不止我一个人,MarkDown现如今已有很多衍生版本,我尝试过CSDN,StackEdit,Cmd,简书的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 |
命令 | 显示 | 命令 | 显示 | |
---|---|---|---|---|
\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 |
命令 | 显示 | 命令 | 显示 | |
---|---|---|---|---|
\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} |
命令 | 显示 | 命令 | 显示 | |
---|---|---|---|---|
\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} |
分别举出一个例子,就应该可以对其完全领悟:
[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>
<center>:
[code]<center> ![Panda](http://img.blog.csdn.net/20151109165400641) Panda </center>
Panda
关于图片大小的显示问题,可以阅读博客:MarkDown图片大小问题。
至于更复杂的操作,可以查阅更多资料。对于使用一些网页上不错的用法时,建议可以通过查看网页源码,找到对应的HTML源码,稍作调整即可应用到文档写作中:
相关文章推荐
- HTML一般标签
- html表单中get与post之间的区别
- [多浏览器兼容]IE浏览器HTML条件注释
- 在html页面中预览图片获取本地的绝对路径
- XHTML学习<2>
- htmlunit官网简易教程(翻译)
- java去除html代码
- HTML注册页面代码
- html 块级元素和行内元素
- HTML文本框录入字母自动大写
- HTML控件不可读或不可用
- HTML中的<audio>和<video>标签讲解
- ASP.NET支持表单中上传HTML代码的简单方法(不安全)
- HTML跳转方式
- DOM学习笔记整理二使用及定时器
- HTML DOM(二):节点的增删改查
- HTML DOM(一):认识DOM
- 如何直接在Web html页面运行coffeescript代码
- html select模拟readonly
- 解析html