LaTex简要指南|初级篇1-第一篇LaTex文档

以下内容假设读者已经成功安装上了LaTex发行版,笔者使用TexLive 2015配合自带的编辑器TeXworks。

本篇涉及:

  • 一个标准LaTex文档的基本结构
  • 如何让LaTex支持中文
  • 如何制作标题页面

1. LaTex文档的基本结构

和常用的Word不同,LaTex的文档结构并不是所见即所得的。通常一个LaTex文档是以.tex为后缀的文本文档,其中包含了LaTex的控制代码文字内容两部分。文字内容是我们需要展示的部分,而控制代码告诉LaTex对应的文字内容所使用的样式、级别或其他命令。通过编译,可以将.tex文件转换为.pdf文件,一个最基本的Hello World!文档如下:

\documentclass{article}
\begin{document}
  Hello World!
\end{document}

如果将上述代码复制到Texworks中,按Ctrl+T编译之后,可以看到一个pdf文件,其中内容为:

与此同时,在页面的最底部自动加上了页码“1”。

从代码中可以看出,有的代码是以反斜杠“\”开始,没有在输出的文本中体现。其中以反斜杠“\”开始的语句就是控制代码,其最常用形式为\command{option},代表以参数option执行命令command。每个命令都有各自对应使用的参数,常用的命令我们将会在后面提到。在本例中,以第一句为例,\documentclass{article},告诉了LaTex编译器:创建的文档类型是一个文章,类似的参数还有report、book等,使用者可以根据自己的文档类型进行选择。

第二行与第一行稍有些不同,这句控制代码以\begin{document}开头,对应后面以\end{document}结尾的控制代码。常用的形式是\begin{environment}\end{environment}。这样的语句总是成对出现的,用于定义一个语言环境,作用于被这两句包围住的中间部分,意思是包围住的这部分内容处于名为environment的环境内。在这个例子里面就是告诉LaTex:正式文档从这里开始了。还有其他可以使用的语言环境,以后会说到。通常语言环境可以嵌套,以下都是合法的格式:

\begin{document}
  \begin{environment1}
    \begin{environment2}
    \end{environment2}
  \end{environment1}
\end{document}

以下是不合法的格式,需要说明的是:document环境必须是最高层级环境):

%不合法方法1 
\begin{document}
  \begin{environment1}
    \begin{environment2}
  \end{environment1}
    \end{environment2}
\end{document}
 
%不合法方法2 
\begin{document}
  \begin{environment1}
\end{document}
  \end{environment1}
 
%不合法方法3 
\begin{environment}
  \begin{document}
  \end{document}
\end{environment}

%不合法方法4
\begin{environment}
  \begin{document}
  \end{document}
\end{environment}

2. 让Hello World!支持中文

输出了英文的Hello World!之后,我们试着把代码中的“Hello World!”增加一句“你好,世界”。结果会发现要么编译器直接忽略了中文,要么直接报错不给任何输出。这是因为很多软件对中文的支持都很不友好,这时候,我们可以用一些宏包来实现对中文的支持,比如ctex,只需要在文件前端加一句\usepackage{ctex}即可。这句命令的意思是使用名为ctex的宏包,至于宏包是什么以后会在单独的一篇里说到,在这里只需要知道宏包可以让我们扩展某些需要的功能就可以了。新建.tex文件,输入:

\documentclass{article}
\usepackage{ctex}
\begin{document}
  Hello World! 你好,世界!
\end{document}

可以看见编译输出:

如果输出任然有乱码,请注意.tex编码是否正确,在TeXworks里选择编辑-首选项-编辑器,里面的编码选项选择为System,并重启TeXworks即可。

3. 添加标题页

上面介绍了大概的LaTex文档结构,但一篇文档往往会包含更复杂的内容,例如:标题、图表、公式等,对应于不同的内容,我们有不同的处理方法(环境、宏包等)。这一章简要介绍如何给一篇文档增加标题页:在Hello World!文档基础上,我们增加几句命令:

\documentclass{article}
\usepackage{ctex}
 
\title{万年不变的Hello World!}
\date{20170425}
\author{搬运者}
 
\begin{document}
  \maketitle
  \newpage
 
  Hello World!

\end{document}

上面的示例中在document环境外使用了\title\data\author语句,他们并不直接显示在文档的内容中。这三句的作用是为document环境里的\maketitle命令提供参数,使得编译器可以根据这些参数创建一个标题页面。\newpage则是结束本页,创建一个新的页面。

编译后就可以看到生成了一个带有页码的标准格式标题页面,但通常情况下我们并不希望第一页出现页码。于是利用\pagenumbering实现对页码的操作。修改后的代码如下:

\documentclass{article}
\usepackage{ctex}
 
\title{万年不变的Hello World!}
\date{20160429}
\author{科研狗}
 
\begin{document}
  \pagenumbering{gobble}
  \maketitle
  \newpage
  \pagenumbering{arabic}
 
  Hello World!
\end{document}

\pagenumbering的常用参数有gobble、arabic和roman,分别代表无页码、阿拉伯数字页码和罗马数字页码

在本篇中,你可以学到如何创建自己的第一篇LaTex文档,接下来的教程里将会涉及如何组织一篇完整的文档,并且最大化利用LaTex各项特性。


要点总结

  • LaTex包含控制代码和文字内容两部分
  • 一篇文档必须定义语言环境
  • 命令以反斜杠\开始,环境必须有begin和end
  • pagenumbering的参数
  • gobble - 无页码
  • arabic - 阿拉伯数字页码
  • roman - 罗马数字页码

推荐阅读更多精彩内容

  • 做数学建模时,用一个小时的时间教会了队友LaTeX,这是当时的讲义。 关于TeX的介绍 TeX是全世界最专业也是最...
    MrGod阅读 7,374评论 4 79
  • 刚装了电脑,这几天一直在整理资料还有倒腾软件。今天打开Word突然觉得它很难用,因为它经常出现格式混乱的情况。这时...
    BSC_5622阅读 40,966评论 0 17
  • 这几天一直在想该按照什么样的结构去写这个LaTeX栏目,才能让大家更快的上手,甚至培养对LaTeX的兴趣。 LaT...
    青柠学术阅读 18,417评论 5 30
  • 春姗:小明,你说我最近怎么总是便秘,我觉得吃的挺健康的啊? 我:你罗列一下吃了什么? 春姗:早,10颗干果、1袋小...
    太原小明阅读 608评论 12 21
  • 众所周知,好的演说都有一个特点,那就是互动性很强。演讲者的演说内容能带动全场听众的情绪,演讲者就像一个指挥般,用语...
    飞生阅读 113评论 0 5