LaTeX | 为学术论文排版而生【公式篇】

一步一坑,继续LaTeX系列的第三篇【公式篇】,前面介绍过【入门篇】和【文本篇】。在公式编辑方面,LaTeX具有独到甚至统治性的优势,大批用户投入$LaTeX$的怀抱。今天就一起见识下它的魅力吧!

论数学公式

对于理工科、经济学等方向的学生和科研人员来说,难免要与数学公式打交道,比如写报告、发表学术论文。从我自己和周围的朋友来看,排版数学公式永远是件麻烦事,特别是当公式很多很复杂时。

比如在Word中,插入公式很容易引起行距的变化,需要多次调整,且很容易出现牵一发而动全身的典型Word风格(此处忽略Word排版大神)。此外在Word中给公式编号也是要经过很多步骤,就算借助MathType也无法实现一键完成编号的程度。

目前排版数学公式的方法最常见的是:

  • Word中自带的插入公式功能。

  • 借助Mathtype

上面这两种方法,要么折磨人,要么根本满足不了需要,这里不多说,大家都懂!:)

今天就向大家介绍排版数学公式的王者$LaTeX$。

☟,准备入坑!

LaTeX 数学公式语法

假如现在我们要用$LaTeX$排版勾股定理,编写下面的代码即可:

1
$a^2 + b^2 = c^2$

得到的效果就是:

什么!这么简单,等等,没你想得那么简单:)

因为$LaTeX$也算是一种编程语言,所有内容都需要通过代码实现,从上面勾股定理的实现代码可以看出都是由字母搭配各种符号构成。这里有两点:

  • 字母是都知道,这不是问题。
  • $LaTeX$编辑公式涉及到的符号特别多,先不说知道什么时候用哪个符号,你连把这些符号记住就不太可能了(累觉不爱,且行且珍惜:))

不过,有办法解决,后面再说。继续$LaTeX$语法。

行内公式

所谓行内公式(inline math)即指公式不单独成行,而是在一句话的中间。行内公式有三种表达方式:

  • $...$
  • \(...\)
  • \begin{math}...\end{math}

我们一般习惯使用$...$。比如我要表达频率等于速度除以波长这么一句话,$LaTeX$代码如下:

1
频率$f$等于速度$v$除以波长 $\lambda$

效果如下:

是不是很简单的呢:)

行间公式

行间公式(display math)指单独成行的公式,分单行公式多行公式(后面再说)。行间公式的表达方式也有三种:

  • $$...$$
  • \[...\]
  • \begin{displaymath}...\end{displaymath}

同样,一般习惯使用$$...$$。比如使用下面的代码实现二次函数的一般表达式:

1
$$ f(x)= ax^2 + bx + c $$

运行得到效果:

怎么,是不是依然很简单,:)继续往下看。

公式编号

公式编辑好后,往往需要对其进行编号,即公式有编号且编号自动增加。实现公式编号需要在导言区调用{amsmath}宏包,还得使用equation环境。给二次函数一般表达式编号的全部实现代码如下:

1
2
3
4
5
6
7
8
9
10
\documentclass[UTF8]{ctexart}
\usepackage{amsmath}
\begin{document}

\begin{equation}
         f(x)= ax^2 + bx + c 
\end{equation}

\end{document}

运行得到效果:

但是,单单做到这一步还不够,因为往往文档都是有章节的,且经常碰到公式编号跟随章节序号变化的要求。这一点$LaTeX$早就为我们考虑了,而且实现方法非常简单(绝对秒杀WordMathType)。

方法就是导言区添加:\numberwithin{equation}{section}

因此修改前面的代码为:

1
2
3
4
5
6
7
8
9
10
11
\documentclass[UTF8]{ctexart}
\usepackage{amsmath}
\numberwithin{equation}{section}
\begin{document}

\section{Math}
\begin{equation}
 f(x)= ax^2 + bx + c 
\end{equation}

\end{document}

运行得到效果:

到这里,可以发现用$LaTeX$编辑公式是这么简单高效。

你可能不知道的 MathType 功能

先设想一下:

如果能先在MathType里编辑好公式,然后直接拷贝到LaTeX里进行排版,那该有多好!这样便能将MathType可见即可得的风格与LaTeX所思即所想的风格结合起来。

事实是MathType确实能做到,下面具体说一下。

首先在MatyType中编辑好自己需要的公式,比如二次函数根的表达式:

编辑公式

在菜单栏选择剪切并拷贝预置

MathType设置

选择MathMl 或 TeX,点击确定,完成设置。

MathType设置 然后全选编辑器好的公式,Ctrl+C复制。在LaTeX编辑器(比如TeXstudio)粘贴,得到:

1
\[x = \frac{{ - b \pm \sqrt {{b^2} - 4ac} }}{{2a}}\]

这里可以看出,默认情况下MathType采用行间公式\[...\]

编译代码得到:

编译输出

到此完成。所以可以看到,通过上述方法,我们可以在MathType中先编辑好比较复杂的公式,特别是涉及很多符号的公式,然后拷贝到LaTeX中。当然,有时满足需要,可以稍微修改下粘贴到LaTeX的代码,以得到更好的公式排版效果。

就讲到这里!

ISEEX wechat
艾新可思公众号,我们的小窝~
0%