这几天一直在想该按照什么样的结构去写这个LaTeX栏目,才能让大家更快的上手,甚至培养对LaTeX的兴趣。
LaTeX本身非常复杂,涉及的细节非常多,不可能全部介绍,笔者能力有限,也难以做到面面俱到。因此,几经思考之后,决定突出重点,按照入门篇、文本篇、公式篇、浮动体篇、自动化工具篇展开本次的LaTeX系列。
下面就开始LaTeX系列的第二篇文本篇,所谓文本篇,主要涉及文字、段落、字体、页面设置等。
从 Hello World 说起
大家应该都有这种感觉,每当我们学习一个新东西,我们都迫不及待看到一个由自己完成的结果,尽管这样的成果非常简单,但是对我们来说意味着至少我会用了!。只有看到希望了,后面的步子才会越迈越快。
在工程领域,这就叫做Hello World。学习单片机时,点亮第一个发光二极管是Hello World;学习C语言时,程序成功编译并输出一个字符串,叫做Hello World;焊接PCB时,LED成功发光了,叫做Hello World。
那么,LaTeX里的Hello World就是:新建文件->敲代码->编译->输出PDF。
咱,一步一步来。
1. 新建文件
开始之前,先说一下小编的操作环境:
系统:Mac OS X Sierra 10.12.2
编译器:MacTeX
编辑器:TeXstudio 2.12.2
备注:“研屋”是“猫Q学术派”微信公众号以前的名称
编译器和编辑器的下载可以参考上一篇推送【入门篇】。操作环境不一样没关系,Windows用户推荐TeXlive 2016 + TeXstudio。
打开TeXstudio,界面如下。新建文件,并保存为Hello World.tex。注意LaTeX文件的格式为.TeX。
为了对中英文有更好的支持,编码方式采用UTF8,如下图红色方框所示处。TeXstudio默认已经设置好,我们不需要管。只是如果采用其他编辑器,保存时可能需要设置编码方式,不然中文可能无法显示。
2.敲代码
今天这个Hello World例程的目标就是输出Hello World。为此,我们在TeXstudio的代码编辑区敲入以下代码(后面再解释具体含义)。
\documentclass{article}\begin{document} Hello World\end{document}
3.编译
编译之前,我们需要设置LaTeX的编译方式。随着LaTeX的发展,出于不同的目的,出现了多种编译方式,如PdfLaTeX、LaTeX、XeLaTeX等,这里我们一般采用XeLaTeX,因为这种方式对中文的支持较好。 具体设置方法是进入菜单栏TeXstudio->Preferences,在弹出的窗口的左侧面板点击Build,在Default Compiler项选择XeLaTeX,并点击OK完成设置,如下图所示。
然后,点击下图所示编译并预览按钮,可以看到编译成功,没有出现错误,右侧输出效果的预览视图。
4.输出PDF
上面的预览视图还不算真正的输出PDF,其实在我们编译的时候,PDF文档已经在Hello World.tex的根目录生成了,找到就可以了。
到这里,就算完成了Hello World。
语法讲解
LaTeX文档的基本结构
\documentclass{article}\begin{document}\end{document}
上述三行代码代表了一个LaTeX文件必不可少的三个部分。
\documentclass{article}表示该文档的类型是期刊(aiticle),LaTeX还支持report(报告)、book(书籍)、beamer(幻灯片)等多种类型。
\begin{document}和\end{document}表示文档内容的开始和结束,也就是说,所有正文内容都写在其中。\begin{document}前的部分我们称为导言区,宏包我们都是写在导言区,后面会具体介绍。
此外,LaTeX中,我们用%表示注释,如:
\documentclass{article}%这是导言区\begin{document}\end{document}
中文支持
在LaTeX中,想要支持中文非常简单,通常有两种方式:
调用ctex宏包,\usepackage[UTF8]{ctex},[ ]代表可选项,在LaTeX中这是非常常见的。[UTF8]表示该文档采用UTF8编码方式。由于现在LaTeX对中文的支持已经很完善,因此我们可以直接使用\documentclass[UTF8]{ctexart},代表该文档是中文论文(ctex+article)。推荐使用这种方式,因为对部分的宏包的支持较好。
用下面代码做个示范。
\documentclass[UTF8]{ctexart}\begin{document}这是第一个\LaTeX 文档\end{document}
编译输出,效果如下:
这里需要提一下,上面代码中的\LaTeX是专门用于显示LaTeX的logo。又如\TeX可以显示TeX的logo,大家可以自己试试。
行与段落
LaTeX中,在一行的末尾使用\\表示换行,即另起一行。而两次按Enter表示另起一段落,即一个空行表示另起一段落。当然也可以用\par表示另起一段落。如下面代码所示:
\documentclass[UTF8]{ctexart}\begin{document}这是第一行。\\这是第二行。另起一段落,另起一段落,另起一段落,另起一段落,另起一段落,另起一段落,另起一段落,另起一段落。\par另起一段落,另起一段落,另起一段落,另起一段落,另起一段落,另起一段落,另起一段落,另起一段落。\end{document}
效果如下:
可以看出,默认段首是缩进两格的,如果想取消缩进,可以在该段落前面添加\noindent语句。如:
\documentclass[UTF8]{ctexart}\begin{document} \noindent Hello World\end{document}
章节
如果文档类型为article,我们采用\section{章节名}、\subsection{章节名}开启一个章节或者次级章节。代码如下:
\documentclass[UTF8]{ctexart}\begin{document} \section{这是第一章节} Hello World \subsection{这是次级章节} Hello World \section{这是第二章节} Hello World\end{document}
效果如下:
正如大家看到的,默认情况下,第一级章节标题是居中显示的(注意,上图预览视图的第一行是页眉),显然这不符合大多数需要,为此在导言区添加一些设置章节格式的代码即可,如下:
\documentclass[UTF8]{ctexart}\CTEXsetup[name={第,章}]{section}\CTEXsetup[format={\zihao{-3}\raggedright\bfseries}]{section}\begin{document} \section{这是第一章节} Hello World \subsection{这是次级章节} Hello World \section{这是第二章节} Hello World\end{document}
得到:
字体设置
1.字体选择
LaTeX的字体蔟非常复杂,这里不多叙述,大家可以查查资料。下面代码用于设置正文部分中英文的默认字体分别为Roman Times New和楷体-简(Windows上写楷体即可)。其中,xeCJK宏包用于设置中文字体,fontspec宏包用于设置英文字体,将其添加到导言区即可。
\usepackage{xeCJK}\setCJKmainfont[BoldFont={黑体-简}]{楷体-简}\usepackage{fontspec}\setmainfont{Times New Roman}
2.字体大小
LaTeX中设置字体大小的方式比较多。在文档类型为中文论文的情况下,我通常使用\zihao{数字}的方式来改变字体大小,数字的大小表示该部分文字为几号字体。如下所示:
\documentclass[UTF8]{ctexart}\CTEXsetup[name={第,章}]{section}\CTEXsetup[format={\zihao{-3}\raggedright\bfseries}]{section}\begin{document} \section{这是第一章节} \zihao{2} Hello World \subsection{这是次级章节} Hello World \section{这是第二章节} Hello World \end{document}
效果如下:
如果只想改变某部分文字的大小,可以用一对大括号{}括住\zihao{数字}和文字,LaTeX中一对大括号{}表示一个环境,环境内的格式控制语句只对环境中的文字起作用。如:
{\zihao{3} Hello World}
页面设置
1. 纸张设置
LaTeX中可以通过可选项来设置页面纸张的大小(默认为A4)。代码如下:
\documentclass[UTF8,a4paper]{ctexart}
2.页边距
此外,LaTeX可以用geometry宏包来设置页边距,代码如下:
\usepackage{geometry}\geometry{left=2.5cm,right=2.5cm,top=2.0cm,bottom=2cm}
3.页眉页脚
LaTeX中用\pagestyle来设置页眉页脚,默认为页眉显示章节标题和页码,页脚为空。默认风格用下面的代码表示:
\pagestyle{headings}
如果要取消页眉页脚,用代码:
\pagestyle{empty}
LaTeX的【文本篇】就到这里啦,本系列教程将持续更新,想学习的可以点个关注,感谢支持!更多丰富的格式设置需要大家多查阅资料来学习,这里推荐大家看看刘洋海的《LaTeX 入门》,一本很经典的LaTeX参考资料!