LaTex学习(三)LaTex文档类与宏包

举报
陈沧夜 发表于 2022/04/29 22:28:15 2022/04/29
【摘要】 文章目录 认识LaTex保留字符LaTex环境导言区 文档类宏包常用宏包文字、公式和符号排版元素图表和浮动体修改版式 参考资料尾言 认识LaTex LaTeX ...

认识LaTex

在这里插入图片描述

LaTeX 处理一个包含文本的文件,文件中散布着描述文本格式的命令。 它至少产生三个文件作为输出

.dvi文件:这包含可以用于各种输出命令。 之所以可以使用各种程序查看LaTeX的输出,是因为这些程序实际上使用了 .dvi文件。

.log文件。包含输入文件中发现的错误摘要和诊断信息。

.aux文件。LaTeX 自己用,用于诸如切片之类的处理。

LaTex的命令主要结构是\[]{},以命令名称开头,命令名称后要么跟一串字母,要么跟单个非字母的东西组成。 方括号中的参数是可选的,而大括号中的参数是必需的。注意LaTeX 区分大小写,除非明确说明了,否则以小写形式输入所有命令。

\documentclass{article}

  
 
  • 1

保留字符

LaTex中有一种特殊的符号,它们在LaTex中有着特殊的定义成。在生成文档时候不能直接输出

#		%自定义命令时,表明参数序号
$		%数学环境命令符,用于输入数学表达式,进入或者退出数学环境
%		%注释符
^		%数学上标命令符
&		%表格跳列符
_		%数学下标命令符
{		%标记命令
}		%标记命令
\		%开始LaTex命令

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

但是如果在使用中你明确要将这些符号作为文本输出。可以在它们前面加上\转义。类似于C语言中的转义。可以这样理解。

\的转义就比较麻烦。

可以使用

\texttt{\char92}

  
 
  • 1

92是\的ASCII码

或者

\texttt{\char`\\}

  
 
  • 1

char`后跟字符的方式输出,对于保留字要多加一个 \ 进行转义

LaTex环境

LaTex的环境是指让一些效果在局部生效,或者生成特殊的文档元素的标记

主要使用方法是使用\begin\end

\begin{document}
...
\end{document}

  
 
  • 1
  • 2
  • 3

以上示例说明的是document环境的开始与结束。环境可以嵌套用。

导言区

LaTex的文本框架一般是这样的

\documentclass[options]{...}	%...为文档类型输入点
% 导言区
\begin{document}
% 正文区
\end{document}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5

\documentclass[options]{doc-class}\begin{document}之前的内容就是导言区。这个区域可以留空,也可以进行文档前的配置工作。

提醒一下%后的是注释,类似于python中的#注释符

文档类

顾名思义,文档类就是标记文档的类型。文档类的定义必须在文档开头就注明。格式如下:

\documentclass[⟨options⟩]{⟨class-name⟩}

  
 
  • 1

class-name为文档类的名称。article, book, report为最基本的三个文档类,因此常常称为这三个为 标准文档类
注意派生出的支持中文的文档类常见的有ctexartctexbookctexrep

名称 说明
article 文章格式的文档类,广泛用于科技论文、报告、说明文档等。
report 长篇报告格式的文档类,具有章节结构,用于综述、长篇论文、简单的书籍等
book 书籍文档类,包含章节结构和前言、正文、后记等结构
proc 基于 article 文档类的一个简单的学术文档模板
slides 幻灯片格式的文档类,使用无衬线字体
minimal 一个极其精简的文档类,只设定了纸张大小和基本字号,用作代码测试的最小工作示例(Minimal Working Example)

options为文档类可选项,规定一些排版的参数,如字号、纸张大小、单双面等等

对于标准文档类的可选项有

名称 说明
10pt, 11pt, 12pt 指定文档的基本字号。默认为 10pt。
a4paper, letterpaper,a5paper,b5paper,executivepaper 和 legalpaper 指定纸张大小,默认为美式信纸 letterpaper (8.5 × 11 英寸)
twoside, oneside 指定单面/双面排版。双面排版时,奇偶页的页眉页脚、页边距不同。article和 report 默认为 oneside,book 默认为 twoside。
onecolumn, twocolumn 指定单栏/双栏排版。默认为 onecolumn。
openright, openany 指定新的一章 \chapter 是在奇数页(右侧)开始,还是直接紧跟着上一页开始。report 默认为 openany,book 默认为 openright。对 article 无效
landscape 指定横向排版。默认为纵向。
titlepage, notitlepage 指定标题命令 \maketitle 是否生成单独的标题页。article 默认为notitlepage,report 和 book 默认为 titlepage
fleqn 令行间公式左对齐。默认为居中对齐。
leqno 将公式编号放在左边。默认为右边。
draft, final 指定草稿/终稿模式。草稿模式下,断行不良的地方会在行尾添加一个黑色方块。默认为 final。

宏包

在使用Latex时,就像Python一样,会有许多第三方强大的模块。宏包就是这样的一个东西,用来增强LaTex的功能。

宏包的定义格式如下:

\usepackage[⟨options⟩]{⟨package-name⟩}

  
 
  • 1

\usepackage 可以一次性调用多个宏包,在 ⟨package-name⟩中用逗号隔开。这种用法一般不要指定选项。因为如果使用多个宏包时指定选项,相当于给每个宏包指定同样的选项。如果正好有某个宏包不能识别指定的选项,就会出错了。

% 一次性调用三个排版表格常用的宏包
\usepackage{tabularx, makecell, multirow}

  
 
  • 1
  • 2

注意,在调用宏包的时候,就像使用python那样,要确认你已经安装了它

当你不熟悉某个宏包的时候,在windows CMD终端输入

texdoc pkg-name

  
 
  • 1

pkg-name 用包的名字替代一下

常用宏包

不需要记忆,需要时候查阅即可。

文字、公式和符号

amsmath			%AMS 数学公式扩展。
mathtools		%数学公式扩展宏包,提供了公式编号定制和更多的符号、矩阵等。
amsfonts		%AMS 扩展符号的基础字体支持。
amssymb			%在 amsfonts 基础上将 AMS 扩展符号定义成命令。
bm				%提供将数学符号加粗的命令 \bm。
siunitx			%以国际单位规范排版物理量的单位。
mhchem			%排版化学式和方程式。
tipa			%排版国际音标。

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

排版元素

ulem			%提供排版可断行下划线的命令 \uline 以及其它装饰文字的命令。
endnote			%排版尾注。
marginnote		%改善的边注排版功能。
multicol		%提供将内容自由分栏的 multicols 环境。
multitoc		%生成多栏排版的目录。
minitoc			%为章节生成独立的小目录。
glossaries		%生成词汇表。
verbatim		%对原始的 verbatim 环境的改善。提供了命令 \verbatiminput 调用源文件。
fancyvrb		%提供了代码排版环境 Verbatim 以及对版式的自定义。
listings		%提供了排版关键字高亮的代码环境 lstlisting 以及对版式的自定义。类似宏包有minted。
algorithmic		%一个简单的实现算法排版的宏包。如果要生成浮动体的话,需要搭配 algorithm 宏包使用。
algorithm2e		%较为复杂的、可定制的算法排版宏包。类似宏包有 algorithmicx 等。
ntheorem		%定制定理环境。类似宏包包括 theorem、thmtools、amsthm 等。
mdframed		%排版可自动断页的带边框文字段落,提供边框样式的定制功能。
tcolorbox		%以TikZ为基础提供排版样式丰富的彩色盒子的功能。

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

图表和浮动体

booktabs		%排版三线表。
array			%对表格列格式的扩展。
tabularx		%提供 tabularx 环境排版定宽表格,支持自动计算宽度的 X 列格式。
arydshln		%支持排版虚线表格线。
colortbl		%支持修改表格的行、列、单元格的颜色。
multirow		%支持合并多行单元格。
makecell		%支持在单元格里排版多行内容(嵌套一个单列的小表格)。
diagbox			%排版斜线表头。
longtable		%提供排版跨页长表格的 longtable 环境。
ltxtable		%跨页长表格可使用 tabularx 的 X 列格式。
tabu			%提供排版复杂格式表格的 tabu 环境。与 longtable 一同调用时,提供排版复杂格式跨页长表格的 longtabu 环境。
graphicx		%支持插图。
bmpsize			%latex + dvipdfmx 命令下支持 BMP/JPG/PNG 等格式的位图。
epstopdf		%pdflatex 命令下支持 EPS 格式的矢量图。
wrapfig			%支持简单的文字在图片周围的绕排。
subfig			%提供子图表和子标题的排版。类似宏包有 subfigure 和 subcaption 等。
caption			%控制浮动体标题的格式。
bicaption		%生成双语浮动体标题。
float			%为浮动体提供不浮动的 H 模式;提供自定义浮动体结构的功能。

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

修改版式

geometry		%修改页面尺寸、页边距、页眉页脚等参数。
fancyhdr		%修改页眉页脚格式,令页眉页脚可以左对齐、居中、右对齐。
titlesec		%修改章节标题 \chapter、\section 等的格式。
titletoc		%修改目录中各条目的格式。
tocloft			%类似 titletoc 的修改目录条目格式的宏包。
tocbibind		%支持将目录、参考文献、索引本身写入目录项。
footmisc		%修改脚注 \footnote 的格式。
indentfirst		%令章节标题后的第一段首行缩进。
enumerate		%提供简单的自定义标签格式的 enumerate 环境。
enumitem		%修改列表环境 enumerate 和 itemize 等的格式。
lettrine		%生成段落首字母大写的效果。

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

参考资料

Characters and Control Sequences (tcd.ie)

CTAN: Package lshort-zh-cn

尾言

以上是这一篇LaTex的主要内容。后期的更新,敬请期待!

文章来源: blog.csdn.net,作者:沧夜2021,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/CANGYE0504/article/details/117508696

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。