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
首先从GitHub官网上找到对应的下载文件:
选择安装路径 > 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/
也可以找到很多期刊的模板代码,还支持在线编辑,所见即所得,效果如下:
-
LaTeX开源小屋
里也有很多论文模板资源。
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
控制序列还有若干其他的可选参数可供使用,一般并用不到。感兴趣的话,可以去查看
该宏包的文档
。
Happy LaTeXing!