LaTeX零基础入门教程

LaTeX将文章的排版以代码的形式呈现,这种方式很符合程序员以及科学工作者的审美和工作习惯,但如果强调太多LaTeX不常用的特性,会导致很多初学者望而却步,早早弃坑回归难用的word。同时,网上关于LaTeX的文档极多,还有大量多年未更新的博客,内容早已过时无法兼容现在的版本,很容易造成误导增加学习成本。

因此,本文将场景设定为需要按照规定期刊或报告规定的格式撰写文章,省去不必要的说明,带你快速上手LaTeX(文中也会将LaTeX其他一些进阶用法作为拓展资料整理,供日后查阅)。

一、环境的配置——TeXlive+TeXstuido

1. 关于 TeX Live

TeX Live 是 TUG (TeX User Group) 维护和发布的 TeX 系统,可说是「官方」的 TeX 系统。其相比其他的系统优势在于能够保证更新,兼容性强,也能保持在跨操作系统平台、跨用户的一致性。参见TeX Live 的官方站点

1.1 Mac 用户

TeX Live 在 macOS/OS X 上的名字是 MacTeX,它的官方站点。可以在这里下载 MacTeX 的安装器,而后安装 MacTeX。

如果你身处中国大陆,发现下载速度很慢,可以尝试清华大学中国科技大学的镜像站。

1.2 Windows用户

TeX Live 的当前版本是 2018,你可以从官方站点下载它们的安装包。点击链接,将会「自动选择」距离你最近的镜像下载。同样也可以尝试清华大学中国科技大学的镜像站。

安装需要使用虚拟光驱软件,推荐一个绿色工具即UltraISOv9.6.2.3059,打开界面如下,加载到虚拟光驱:


打开虚拟光驱:

右键单击 install-tl-advanced.bat,以管理员权限执行;

里面基本上可以选默认的,但最后两个例外(TeXworks比较陈旧,后者是更新可能比较慢):

然后点击“安装 TeX Live”,可以看到这样的界面:



安装完成的画面:



同时注意完成后要把cmd关掉!

安装好TeXlive之后若想happy latexing,还需要有一个编辑器,可供选择的有很多,如LyX、TeXworks、TexStudio、WinEdt、Emacs、Sublime Text、Atom、Visual Studio Code等,有兴趣可以参考知乎——有哪些好的编辑器。本文选用的是TeXstudio,也推荐新手使用这个编辑器。

2、安装TeXstudio

首先从官网下载TeXstudio安装文件:

选择安装路径 > install

安装好后需要更改一些设置:

Options > Configure TeXstudio

> General > Language改成zh_CN(中文化)

> Build
> Default Bibliography Tool设置成BibTeX(此处是管理参考文献的相关设置,下文有说明)

> Default Compiler设置成XeLaTeX(为了实现对中文的支持)

至此我们的写作环境就配置好了!

二、写个简单的文档试试

启动TeXstudio,界面如下


在编辑框中,输入如下内容:

\documentclass{article}
% 这里是导言区
\begin{document}
Hello, world!
\end{document}

将文档保存在你希望的位置后,按下绿色的编译按钮。



一会儿,如果没有意外,屏幕的右边就会出现编译之后结果。如下图:

同时会自动生成PDF文件在.tex文件所保存的目录下。

此处的第一行\documentclass{article}中包含了一个控制序列(或称命令 / 标记)。所谓控制序列,是以反斜杠\开头,以第一个空格或非字母 的字符结束的一串文字,他们并不被输出,但是他们会影响输出文档的效果。这里的控制序列是documentclass,它后面紧跟着的{article}代表这个控制序列有一个必要的参数,该参数的值为article. 这个控制序列的作用,是调用名为 “article” 的文档类

其后出现了控制序列begin,这个控制序列总是与end成对出现。这两个控制序列以及他们中间的内容被称为“环境”;他们之后的第一个必要参数总是一致的,被称为环境名。

只有在 “document” 环境中的内容,才会被正常输出到文档中去或是作为控制序列对文档产生影响。因此,在\end{document}之后插入任何内容都是无效的。

\begin{document}\documentclass{article}之间的部分被称为导言区。导言区中的控制序列,通常会影响到整个输出文档。

1. 中英混排

TeX 系统是高教授开发的,当初并没有考虑到亚洲文字的问题。因此早期的 TeX 系统并不能直接支持中文,必须要用其他工具先处理一下(或者是一些宏包之类的)。旧方法不在本教程中赘述,如遇到旧文档的兼容性问题,可参考《一份其实很短的LaTeX入门文档》

但是现在,XeTeX 原生支持 Unicode,并且可以方便地调用系统字体。可以说解决了困扰中国 TeX 使用者多年的大问题。

此外,除去中文支持,中文的版式处理和标点禁则也是不小的挑战。好在由吴凌云和江疆牵头,现在主要由刘海洋和李清维护的 ctex宏包 / 文档类一次性解决了这些问题。ctex宏包和文档类的优势在于,它适用于多种编译方式;在内部处理好了中文和中文版式的支持,隐藏了这些细节;并且,提供了不少中文用户需要的功能接口。

在 TeXworks 编辑框中输入以下内容,保存,使用 XeLaTeX 编译:

\documentclass[UTF8]{ctexart}
\begin{document}
你好,world!
\end{document}

如果没有意外,你将会看到类似下图的输出结果:

相较于之前的例子,这份代码只有细微的差异:

1.文档类从 article 变为 ctexart

2.增加了文档类选项 UTF8

2. 组织文章

保存并用 XeLaTeX 编译如下文档,查看效果:

\documentclass[UTF8]{ctexart}
\title{你好,world!}
\author{Liam}
\date{\today}
\begin{document}
\maketitle
\section{你好中国}
中国在 East Asia.
\subsection{Hello Beijing}
北京是 capital of China.
\subsubsection{Hello Dongcheng District}
\paragraph{Tian'anmen Square}
is in the center of Beijing
\subparagraph{Chairman Mao}
is in the center of 天安门广场。
\subsection{Hello 北京}
\paragraph{北京} is an international city。
\end{document}

在文档类

article/ctexart 中,定义了五个控制序列来调整行文组织结构。他们分别是

\section{·}

\subsection{·}

\subsubsection{·}

\paragraph{·}

\subparagraph{·}

3. 如何查看当前操作系统的字体

按照如下步骤打开系统命令行:

在搜索栏输入cmd

命令提示符右键 > 以管理员身份运行

[图片上传失败...(image-7358e8-1532508080085)]

在系统命令行中输入如下命令:

fc-list :lang=zh-cn > C:\font_zh-cn.txt

打开 C 盘根目录下的 C:\font_zh-cn.txt 纯文本文档,里面的内容就是你当前系统可用的全部中文字体, 为了方便观看,我用的Visual Studio code打开,效果如下:

其中的每一行,都代表着一个可用的字体 。我们可以看到图中的倒数第五行

C:/WINDOWS/fonts/simsun.ttc: SimSun,宋体:style=Regular,常规

出现了之前文档里调用的字体

SimSun,此处表明该字体有两个表示名:宋体SimSun

恭喜你,至此已经掌握了TeXlive+TeXstudio的基本用法,可以编辑自己的文档了,同时,也可以继续向下看,有了上面的知识能帮助你更好的理解模板的结构。

三、使用模板写作

使用模板写作,适用于需要按照规定期刊或报告规定的格式撰写文章的工作者,同时也很适合新接触LaTeX写作的新手感受这种写作方式的乐趣,毕竟手动编辑一套复杂的论文需要花费大量时间,这脱离了LaTeX之类排版语言想让写作者关注内容本身的初衷。下面将介绍初学者在使用模板写作时需要用到的技巧。

1. 模板的获取

建议在使用中自己整理几个自己常用的模板,从网上下载的模板只能提供一个大体的方向,有时也存在版本不同造成的兼容性问题,细节需要自己完善。

  • LaTeXtemplates.com 网站是非常不错的模板分享网站,收集了包括书信,报告,论文,演示文稿,简历等等模板,整体收集模板质量很不错,非常推荐,该网站逐步退出了排版和模板开发的服务,有兴趣可以多多了解。

  • https://github.com/MartinThoma/LaTeX-examples 有作者收集的非常好的模板收集,也收集了大量的tikz等等例子,可下载,选择自己喜欢的模板使用。

  • http://uk.tug.org/training/thesis/ 有不少收集好的国外高校论文模板。

  • https://www.overleaf.com/也可以找到很多期刊的模板代码,还支持在线编辑,所见即所得,效果如下:

2. 模板的使用

这里以北京航空航天大学学报提供的模板为例,把模板下载到电脑中后,选择.tex类型的文件:

构建并查看:

可以在左侧结构栏跳转到相应区域修改内容,也可以在右侧PDF阅览区右键 > 跳转到源直接跟踪到相应代码区,进行修改即可。

下面将分别介绍一些常用的编排技巧。

2.1文献引用

\documentclass{ctexart}

\bibliographystyle{plain}   %引用的样式%
\begin{document}
    这是一个参考文献引用:\cite{name1} %大括号内为相应文献的引用标签
    \bibliography{text}     %导入参考文献库文件%
\end{document}

输入上述代码后进行构建,完成后点击左侧结构栏的参考文献 > text

会提示是否创建.bib文件,选择是

这便是你的文献库,如何添加参考文献信息呢?有两种方式,第一种当然是自己手动整理,第二种则非常方便,打开谷歌学术:

输入文献名之后,在搜索结果中点引用:

选择以BibTeX格式引用:

将内容复制到之前生成的文件库text.bib文件中

@article{ferrari2006raman,  %此处为引用标签
  title={Raman spectrum of graphene and graphene layers},
  author={Ferrari, Andrea C and Meyer, JC and Scardaci, V and Casiraghi, C and Lazzeri, Michele and Mauri, Francesco and Piscanec, S and Jiang, Da and Novoselov, KS and Roth, S and others},
  journal={Physical review letters},
  volume={97},
  number={18},
  pages={187401},
  year={2006},
  publisher={APS}
}

将文献的引用标签与原文对应好:

构建完成后,效果如下:

2.2公式怎么办

为了使用 AMS-LaTeX 提供的数学功能,我们需要在导言区加载amsmath宏包:

\usepackage{amsmath}
  • 数学模式

    LaTeX 的数学模式有两种:行内模式 (inline) 和行间模式 (display)。前者在正文的行文中,插入数学公式;后者独立排列单独成行。

    在行文中,使用$ ... $可以插入行内公式,使用\[ ... \]可以插入行间公式,如果需要对行间公式进行编号,可以使用equation环境: \begin{equaion} … \end{equation}

    行内公式也可以使用\(...\)来插入,略显麻烦。无编号的行间公式也可以使用$$ ... $$来插入,但是这样做会改变行文的默认行间距,不推荐。

LaTeX的公式编辑可以说是其最为犀利的部分之一了,但其公式语法非常繁琐,不过令人高兴的是,这里有一个在线LaTeX公式编辑器,非常方便直观:

2.3表格怎么办

巧了,表格也有类似的工具:Creat LaTeX tables online

2.4图片呢

在 LaTeX 中插入图片,有很多种方式。最好用的应当属利用graphicx宏包提供的\includegraphics命令。比如你在你的 TeX 源文件同目录下,有名为 a.jpg 的图片,你可以用这样的方式将它插入到输出文档中:

\documentclass{article}
\usepackage{graphicx}
\begin{document}
\includegraphics{a.jpg}
\end{document}

图片可能很大,超过了输出文件的纸张大小,或者干脆就是你自己觉得输出的效果不爽。这时候你可以用

\includegraphics控制序列的可选参数来控制。比如

\includegraphics[width = .8\textwidth]{a.jpg}

这样图片的宽度会被缩放至页面宽度的百分之八十,图片的总高度会按比例缩放。

\includegraphics控制序列还有若干其他的可选参数可供使用,一般并用不到。感兴趣的话,可以去查看该宏包的文档

2.5 制作幻灯片

没错,LaTeX的确还可以制作精美的幻灯片pdf,不过具体使用方法与论文写作大同小异,网上也有很多漂亮的模板,有兴趣可以去继续了解。

总结

之前一直用Markdown写文章,对比两者,感觉Markdown就像傻瓜版LaTeX,适合写博客之类对不追求复杂格式的场景,在此推荐一款Markdown编辑器typora,主页极其漂亮的同时,软件本身也非常简洁实用,功能强大。

日常写作用轻量级的Markdown,想要获得更为复杂和严谨的论文排版作品,上LaTeX,这样基本就能涵盖所有的写作场景,告别臃肿难用的word软件,让我们更专注于内容,享受其中。

Happy LaTeXing!

参考资料

一份其实很短的 LaTeX 入门文档

TeXlive 下载及安装说明

LaTeX第七课:排版参考文献

知乎——有哪些好的 LaTeX 编辑器?

如何快速在线生成latex表格

关于在 Mac 电脑上使用 MacTeX,你可能会希望阅读以下文章

推荐阅读更多精彩内容