LaTeX自学笔记

LaTeX自学笔记

本人自学LaTeX非系统性笔记,随学习进度不断更新

简介


因为CIE考试迫在眉睫,最近就先暂时不更新这篇文章了



是一种基于ΤΕΧ的排版系统,在生成学术期刊,复杂表格和公式上的效果格外的突出。相比于Microsoft Word而言,可以很稳定、精确、美观地完成排版任务(尤其是数学排版)。的可拓展性也很强,可以支持任何形式的排版,如五线谱,原理图等。

当然,最大的缺点就是上手门槛高,   (要是门槛不高就不会有这篇文章了) 其次还有编写耗时长,编写复杂,需要编译源文件才可以看到文章效果等缺点。因此,爆肝各大教程提升自己使用类排版系统能力是唯一的方法。

那为什么还要花费如此经历去学习使用?是因为排版系统的质量实在是高,高到大学好多论文只支持上传作品。

那看样子这个 ,我是铁定得学了。

Tips:结合目录食用本文,你将收获更高阅读效率

配置本地环境

首先得给自己整一个写的地方。
常见的 发行版有两个,分别是 TeX LiveMiKTeX

TeX Live

TeX Live提供的包特别全,但是体积比较大,安装比较慢(指安装一个上午)。不过如果你的网络条件不是特别稳定,建议直接安装TeX Live一劳永逸。

   TeX Live下载地址

MiKTeX

MiKTeX体积相比TeX Live小了很多,安装速度明显变快,但是遇到缺少的包就需要联网下载了。
   MikTeX下载地址

Overleaf

另外,如果想要快速使用 编辑器的话,一款叫做Overleaf的在线编辑器也比较好用,进入网站需要先注册登录才能使用。
   Overleaf网址

Visual Studio Code

在安装完TeX Live或者MiKTeX之后,你可以使用VSCode作为一个写作环境。VSCode可以对代码进行高亮标注,并且还有现代化的UI,出色的颜值。如果你是VSCode的忠实用户的话,也可以对VSCode进行快速的 环境配置。

我们需要安装一个叫做LaTeX Workshop的插件。安装方法如下:

  1. 按下 Ctrl+Shift+X,转到 Extentions(扩展) 界面
  2. 搜索LaTeX Workshop
  3. 点击安装

LaTeX命令格式

所有的 命令都使用反斜杠”\“作为开头
反斜杠后面的文字部分代表命令名称,后面的花括号”{}“代表命令参数
举一个例子,此命令\documentclass{article}代表引入文档类别,类别为article(文章)。

若存在百分号”%“,则代表在同一行内百分号后面的所有字符为注释,不参与文档编译。在中出现编译错误时,相比于直接删除有问题的代码,使用”%“注释掉相应代码是更明智的选择。你可以在文档任何一个位置插入注释。


LaTeX文件结构

文档的结构分为导言区和正文区(文稿区)。

导言区

导言区主要用于文档的全局设置。
\begin{document}命令之上的内容,一般称之为导言区。
下面是导言区常用的命令:

  • \documentclass命令用来引入文档类别,以及定义部分正文属性。
    • 例如,\documentclass{article}代表引入文档类别,类别为article(文章)。花括号内还可以使用report, book, letter等参数。每一种文档类别编译出的效果都不一样。(比如说Book就会生成一个封面,但是article就不会)
  • \title{}命令用于定义文档标题。
  • \author{}命令用于定义文章作者。
  • \date{}命令用于定义编辑文档的时间。
    花括号内填入\today代表使用当前时间。

正文区

顾名思义,正文区则用于承载编译结果的内容。(说白了就是正文) 你可以使用文字,命令,数学公式等元素构成正文。

正文区命令

  • 使用\begin{*环境名称*}\end{*环境名称*}命令引入一个环境。

    • 环境名称填入document引入一个文件环境。所有文档有且只有一个document环境,置于\begin{document}\end{document}之间的内容叫做正文区。

    • 置于\begin{document}\end{document}之间的命令与字符会被编译。因此,可以在\end{document}存放一些论文相关的资料,以便日后查阅。

    • 环境命令的格式如下:

      \begin{*环境名称*}
          内容
      \end{*环境名称*}
      
  • \maketitle命令用于在正文依次显示导言区定义的标题,作者和编辑时间。
    • 只有在导言区设定了标题,作者和编辑时间的值之后,才可正常显示
    • 当文档类别为letter时,此命令会编译错误。因为letter文件类型中不存在\maketitle命令。

数学模式

使用“美元”符号”$“包裹的内容称之为”数学模式”,之外的内容为”文字模式”。

文字置于文字模式内即可渲染。但在数学模式下输入公式,才可以正确渲染公式。

单美元符号”$$"包裹的公式会在行内显示,称作**行内公式**;而双美元符号"$$$”包裹的内容会另起一整行居中显示,称作行间公式

例如如下代码:

Let $f(x)$ be defined by the formula $$f(x)=3x^2+x-1$$ which is a polynomial of degree 2.

会被显示为:

Let be defined by the formula

which is a polynomial of degree 2.

(LaTeX的一大好处,解决数学渲染的痛点)

P.s:(后面那个“(1)”实操的时候是不会显示的,这是我的博客目前的一个Bug,以后找时间再修复)


换行

在源文件正文中增加一个空行,用于表示换行操作。
例如:

Hello World!
Let $f(x)$ be defined by the formula $f(x)=3x^2+x-1$.

显示为:
Hello World! Let be defined by the formula .

而添加一行空行后:

Hello World!

Let $f(x)$ be defined by the formula $f(x)=3x^2 +x-1$.

则显示为:
Hello World!
Let be defined by the formula .

空行有以下几个规则:

  • 仅存在注释的一行不算做空行,不作为换行操作。
  • 多个空行并列存在,会当做只有一行空行处理

LaTeX中文处理

需要进行几步配置才可以使用中文输入。具体配置方式之后在这里更新。
另外,设计中文处理的一些命令也会在文章最后进行补充,等到时候再更新吧。


LaTeX字体

中,一个字体有如下5种属性:

  • 字体编码
    • 正文字体编码
    • 数学字体编码
  • 字体族
    • 罗马字体
    • 无衬线字体
    • 打字机字体
  • 字体系列
    • 粗细
    • 宽度
  • 字体形状
    • 直立
    • 斜体
    • 伪斜体
    • 大型小写
  • 字体大小

文件中,如上五个属性都可以通过命令或者声明进行设置。
以下内容从字体族开始:


字体族

字体族一共有三种,分别是罗马字体(Roman Family),无衬线字体(Sans Serif Family)和打字机字体(Typewriter Family)。

三中不同的字体看起来就像是这样的:

  • 罗马字体:笔画起始处有装饰(衬线)
    罗马字体

  • 无衬线字体:笔画起始处无装饰
    无衬线字体

  • 打字机字体:每个字符宽度相同,又称作等宽字体
    打字机字体


字体族命令

文档中,可通过\textXX{*文本*}\XXfamily *文本*两种命令设置字体族种类。
XX需要填入对应字体族缩写。

\textXX{}

\textXX{}为字体命令。
\textXX{}中,XX中填入对应字体族缩写。

此命令共有三种样式:

  • \textrm{} 代表使用罗马字体(rm)
  • \textsf{} 代表使用无衬线字体(sf)
  • \texttt{} 代表使用打字机字体(tt)

而在{}中需要填入需要指定字体族的文字,例如\textrm{Roman Family}命令输出结果为:

由上图所示,”Roman Family”文字以罗马字体显示。

\XXfamily *文本*

\XXfamily *文本*为字体声明。
\XXfamily *文本*中,XX中需填入对应字体族缩写。
不过请注意,*文本*与命令\XXfamily之间需存在一个空格。

\textXX{}命令一样,此命令共有三种样式:

  • \rmfamily *文本* 代表使用罗马字体(rm)
  • \sffamily *文本* 代表使用无衬线字体(sf)
  • \ttfamily *文本* 代表使用打字机字体(tt)

*文本*区域输入需要声明格式的文字,作用于后续的文本。
文本区域可以使用大括号对文本进行分组,限定字体声明的作用范围。
例如:

1
2
3
4
5
6
7
8
9
{\rmfamily Roman Family} {\sffamily Sans Serif Family} {\ttfamily Typewriter Family}

或者

\rmfamily Roman Family {\sffamily Sans Serif Family} {\ttfamily Typewriter Family}

或者

\rmfamily Roman Family \sffamily Sans Serif Family \ttfamily Typewriter Family

三行均输出为:

不过请注意,当一个字体声明遇到另一个字体声明时,会结束当前声明,而采用新的声明。


字体系列

字体系列一共有两种,分别是中体(Medium Series)粗体(Boldface Series)
所谓中体,其实是中等权重;加粗也实际上是“加宽加粗”。
虽说我也没搞懂这个中体是个啥玩意,看起来也没啥特别的

两种字体系列如图所示:

  • 中体:

中等权重

  • 粗体:

粗体


字体系列命令

与字体族命令相同,可通过\textXX{*文本*}\XXfamily *文本*两种命令设置字体系列。
XX需要填入对应字体族缩写。
其中,中体的缩写为md,而粗体的缩写为bf如下面表格所示:

字体系列名称 英文名称 缩写
中等权重 Medium Series md
加粗 Boldface Series bf

例如,\textmd{Medium Series} 或者 \mdfamily Medium Series 的输出结果为

\textbf{Boldface Series} 或者 \bffamily Boldface Series的输出结果为

两个命令的语法要求与特点和字体族的那两个命令完全一致,因此这里就不多写了。
有关内容在这里查看。

*有一点需要注意,我前往Overleaf官网测试的时候,加粗命令结果好像编译后不显示。可以使用本地的TeX Studio试一下。


字体形状

字体形状共有如下四种。
直立(Upright Shape / Roman Shape)
斜体/意大利(Italic Shape)
伪斜体/倾斜(Slanted Shape)
大型小写(Small Capitals Shape)

他们分别看起来是这样的:

  • 直立:
    直立

  • 斜体:
    斜体

  • 伪斜体:
    伪斜体

  • 大型小写:
    大型小写

同样的,下面用一个表格总结一下字体形状与缩写:

字体系列名称 英文名称 缩写
直立 Upright Shape / Roman Shape up
斜体/意大利 Italic Shape it
伪斜体/倾斜 Slanted Shape sl
大型小写 Small Capitals Shape sc

字体形状命令

与字体族和字体系列命令相同,可通过\textXX{*文本*}\XXfamily *文本*两种命令设置字体系列。
XX需要填入对应字体族缩写。

例如:\textup{Upright Shape} 或者 \upfamily Upright Shape均输出为:

两个命令的语法要求与特点和字体族的那两个命令完全一致,因此这里就不多写了。
有关内容在这里查看。


字体大小

在调整字体大小之前,需要前往导言区\documentclass命令设置默认字号。在\documentclass命令后紧跟一个方括号[],并在其中定义想要的默认字号磅数。

比如说,\documentclass[12pt]{article}代表默认字号为12磅,文档类型为article(文章)。这也意味着文档除单独定义过大小的文字,其他文字的大小都变为12磅。
不过这个磅数到了12磅就封顶了,没有什么所谓的13磅14磅。

字体大小命令

我们可以用{\字体大小命令 *文本*}来定义文档内部分文字的字号。
使用括号来规定作用字体大小的范围。
中,有如下几个大小命令。由小到大依次为:

1
2
3
4
5
6
7
8
9
10
\tiny
\scriptsize
\footnotesize
\small
\normalsize
\large
\Large
\LARGE
\huge
\Huge

举个例子,{\tiny Hello} {\Huge Hello}的输出为:

如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{\tiny Hello}

{\scriptsize Hello}

{\footnotesize Hello}

{\small Hello}

{\normalsize Hello}

{\large Hello}

{\Large Hello}

{\LARGE Hello}

{\huge Hello}

{\Huge Hello}

的输出为:

hello2

这些命令对应字体的大小和默认字体有关,具体对应关系如下:

命令\默认字号 10pt 11pt 12pt
\tiny 5 6 6
\scriptsize 7 8 8
\footnotesize 8 9 10
\small 9 10 10.95
\normalsize 10 10.95 12
\large 12 12 14.4
\Large 14.4 14.4 17.28
\LARGE 17.28 17.28 20.74
\huge 20.74 20.74 24.88
\Huge 24.88 24.88 24.88

最后编辑于:2022.8.31
持续更新

参考源:
Bilibili-一个非常快速的 Latex 入门教程
Bilibili-latex中文教程-15集从入门到精通包含各种latex操作
简书-LaTeX教学2.4 环境
LaTeX字体设置

作者

ntcs

发布于

2022-08-24

更新于

2025-01-26

许可协议

评论