【工具篇-LaTeX】LaTeX语法

文章目录

  • 【工具篇-LaTeX】LaTeX语法
    • 1 快速入门
      • 1.1 简介
      • 1.2 入门示例
        • 1.2.1 导言和正文
        • 1.2.2 环境
    • 2 基础知识
      • 2.1 命令
      • 2.2 文档类
      • 2.3 宏包
      • 2.4 文件组织
        • 2.4.1 载入文件
        • 2.4.2 插入文件
      • 2.5 LaTeX工程中的文件
    • 3 文字排版
      • 3.1 语言支持
        • 3.1.1 编码
        • 3.1.2 中文支持
      • 3.2 注释
      • 3.3 字符
        • 3.3.1 空白符
        • 3.3.2 英文符号
        • 3.3.3 转义字符
      • 3.4 文字强调
      • 3.5 分页换行
    • 4 文档元素
      • 4.1 章节目录
        • 4.1.1 章节标题
        • 4.1.2 目录
        • 4.1.3 文档结构划分
      • 4.2 标题页
      • 4.3 交叉引用
      • 4.4 脚注和边注
      • 4.5 环境
        • 4.5.1 列表
        • 4.5.2 对齐
        • 4.5.3 引用
        • 4.5.4 代码
        • 4.5.5 其他
      • 4.6 表格
        • 4.6.1 列格式
        • 4.6.2 列宽
        • 4.6.3 横线
        • 4.6.4 合并单元格
        • 4.6.5 嵌套
        • 4.6.6 行距
      • 4.7 图片
      • 4.8 盒子
      • 4.9 浮动体
        • 4.9.1 标题
    • 5 公式排版
      • 5.1 数学符号
        • 5.1.1 一般符号
        • 5.1.2 上下标和导数
        • 5.1.3 分式和根式
        • 5.1.4 常规运算符
        • 5.1.5 关系运算符
        • 5.1.6 巨算符
        • 5.1.7 重音和上下括号
        • 5.1.8 箭头
        • 5.1.9 括号和定界符
      • 5.2 多行公式
        • 5.2.1 长公式换行
        • 5.2.2 多行公式
      • 5.3 数组和矩阵
        • 5.3.1 二维数组
        • 5.3.2 矩阵
      • 5.4 公式中的间距
      • 5.5 字体
        • 5.5.1 字体
        • 5.5.2 尺寸
        • 5.5.3 加粗
      • 5.6 定理
    • 6 排版样式
      • 6.1 字体
        • 6.1.1 字体
        • 6.1.2 字号
      • 6.2 段落
        • 6.2.1 长度单位
        • 6.2.2 行距
        • 6.2.3 段落格式
        • 6.2.4 水平间距
        • 6.2.5 垂直间距
      • 6.3 页面
        • 6.3.1 页面参数
        • 6.3.2 内容垂直对齐
        • 6.3.3 分栏
        • 6.3.4 页眉页脚
    • 7 特色工具
      • 7.1 参考文献:BIBTEX工具
        • 7.1.1 BiBTeX数据库
        • 7.1.2 BiBTeX样式
      • 7.2 索引:makeindex工具
      • 7.3 颜色
        • 7.3.1 自定义颜色
        • 7.3.2 带颜色文本
        • 7.3.3 带颜色盒子
      • 7.4 超链接
      • 7.5 PDF
        • 7.5.1 书签
        • 7.5.2 文档属性
    • 8 自定义
      • 8.1 命令
        • 8.1.1 定义新命令
        • 8.1.2 重定义命令
      • 8.2 环境
        • 8.2.1 定义新环境
        • 8.2.2 重定义环境
      • 8.3 宏包和文档类
        • 8.3.1 编写文档类
        • 8.3.2 编写宏包
      • 8.4 计数器
        • 8.4.1 定义计数器
        • 8.4.2 修改计数器
        • 8.4.3 修改输出格式
      • 8.5 可定制命令和参数
        • 8.5.1 标题名称/前后缀等
        • 8.5.2 长度
    • 参考资料

1 快速入门

1.1 简介

TeX的源代码是扩展名为.tex的纯文本文件,可以使用任意文本编辑器打开、编辑器

LaTeX排版格式(对应引擎)有:LaTeX(TeX)pdfLaTeX(pdfTeX)XeLaTeX(XeTeX)LuaLaTeX(LuaTeX),其中只有XeLaTeX(XeTeX)支持中文

1.2 入门示例

\documentclass{article}
\usepackage[utf8]{ctex}\title{入门示例}
\author{timemiser}
\date{May 2022}\begin{document}\maketitle\section{Introduction}\end{document}

下面对该示例进行说明:

文档类型

  • \documentclass{article}设置文档类型为article

导入宏包

  • \usepackage[utf8]{ctex}导入中文字体宏包ctex

其他

  • \title{入门示例}\author{timemiser}\date{May 2022}分别添加文章标题、作者和时间,需要添加后面的\maketitle才能显示
  • \section{Introduction}用于添加正文中的节

1.2.1 导言和正文

  • 导言:从\documentclass开始到\begin{document}之前的命令语句称为导言
  • 正文:从\begin{document}开始到\end{document}之间的命令语句称为正文

1.2.2 环境

环境用以令效果在局部生效,或者生成特殊的文档元素

\begin{<env>}
...
\end{<env>}
  • 参数

    • <env>:环境类型

2 基础知识

2.1 命令

LaTeX中命令以反斜线\开头,并忽略其后的所有连续空格

\<command>[<options>]{<params>}
  • 说明

    • <command>:命令名

    • <options>:有三种格式:

      1. [opt1][opt2]...

      2. [opt1, opt2, ...]

      3. [opt1=item1, opt2=item2, ...]

        其中,第一种格式的选项顺序不可互换,后两种格式的选项顺序可以互换

    • <params>:顺序不可任意交换

2.2 文档类

\documentclass[<options>]{<className>}
  • 参数

    • <options>:文档类的选项,可以全局地规定一些排版参数,如如字号、纸张大小、单双面、单双栏等
    • <className>:文档类的名称
  • 常用的文档类(对应的中文文档类)有以下几种:

    • article(ctexart):小篇幅的文章
    • report(ctexrep):中篇幅的报告
    • book(ctexbook):长篇幅的书籍

    中文文类也可以通过导入ctex(中文字体)宏包、ctexcap(中文标题)宏包实现(宏包见下文)

2.3 宏包

\usepackage[<options>]{<pkgName>}
  • 参数

    • <options>:宏包的选项
    • <pkgName>:宏包的名称;可以同时调用多个宏包,使用逗号隔开

2.4 文件组织

2.4.1 载入文件

\includeonly{<filename1>, <filename1>, ...}
  • 参数

    • <filenameN>:文件名(相对或绝对路径),可以不带扩展名(默认为.tex
  • 说明:

    • 该命令用于在导言区中只载入某些文件,如果文件不在列表内,正文中的插入文件命令不生效

2.4.2 插入文件

\include{<filename>}  % 另起一页插入文件内容\input{<filename>}  % 当前位置插入文件内容
  • 参数

    • <filename>:文件名(相对或绝对路径),可以不带扩展名(默认为.tex

2.5 LaTeX工程中的文件

基本

  • .sty:宏包文件。宏包的名称与文件名一致
  • .cls:文档类文件。文档类的名称与文件名一致
  • .bib:BIBTEX参考文献数据库文件
  • .bst:BIBTEX用到的参考文献格式模板

辅助

  • .log:排版引擎生成的日志文件,供排查错误使用
  • .aux:LATEX生成的主辅助文件,记录交叉引用、目录、参考文献的引用等
  • .toc:LATEX生成的目录记录文件
  • .lof:LATEX生成的图片目录记录文件
  • .lot:LATEX生成的表格目录记录文件
  • .bbl:BIBTEX生成的参考文献记录文件
  • .blg:BIBTEX生成的日志文件
  • .idx:LATEX生成的供makeindex处理的索引记录文件
  • .ind:makeindex处理.idx生成的用于排版的格式化索引文件
  • .ilg:makeindex生成的日志文件
  • .out:hyperref宏包生成的PDF书签记录文件

3 文字排版

3.1 语言支持

3.1.1 编码

latex和pdflatex下可以使用inputenc设置编码为UTF-8

\usepackage[utf8]{inputenc}

3.1.2 中文支持

  • 方式一:使用xeCJK宏包,命令为

    \usepackage{xeCJK}
    
  • 方式二:使用ctex宏包,命令为

    \usepackage{ctex}
    
  • 方式三:使用中文文档类,命令为

    \documentclass{ctexart}
    

3.2 注释

命令 含义 说明
% 单行注释 该字符到行末所有字符被忽略(回车也不引入空格)
\iffalse\fi 多行注释 分别标识注释的开始和结束

3.3 字符

3.3.1 空白符

命令 字符 说明
SpaceTab或行末Enter 空格 1. 连续的空格视为一个空格
2. 行开头的空格忽略不计
\quad 空格 1中文字符宽度的空格
\qquad 空格 2中文字符宽度的空格
\ +Space 空格 1 / 3字符宽度的空格
连续两个及以上Enter 分段 1. 即源码中空行
2. 多个空行视为一个空行
\par 分段 写在行末

3.3.2 英文符号

命令 字符
`` ’` 单引号
`` "` 双引号
... 省略号
\ldots\dots 省略号
fffiflffiffl 连字符

3.3.3 转义字符

命令 字符
\+# #
\+$ $
\+% %
\+{ {
\+} }
\+^ ^
\+~ ~
\+_ _
\textunderscore _
\textbackslash \

3.4 文字强调

命令 含义 说明
\underline{content} 下划线 content为添加下划线的文字内容
\uline 下划线 1. 需要导入宏包ulem
2. 可以为多个单词和换行添加下划线
\emph 斜体 嵌套使用\emph则取消斜体

3.5 分页换行

命令 含义 说明
\\[<offset>] 换行 1. 写在行末
2. 可以带参数<offset>,设置与下一行的垂直间距
3. 用于表格、公式等位置
\newline 换行 1. 不可以带参数
2. 用于文本段落中
\newpage 分页 1. 写在页末
2. 在双栏排版中另起一栏
\clearpage 分页 写在页末

4 文档元素

4.1 章节目录

4.1.1 章节标题

命令 含义 说明
\chapter{<title>} 1. 只在bookreport文档类中有定义
2. <title>为章标题
\section{<title>} <title>为节标题
\subsection{<title>} 一级子节 <title>为一级子节标题
\subsubsection{<title>} 二级子节 <title>为二级子节标题
\paragraph{<title>} 段落 <title>为段落标题
\subparagraph{<title>} 子段落 <title>为子段落标题
\part{<title>} 部分 1. 用来将文档分为大块,但是不影响chaptersection的编号
2. <title>为子段落标题
  • 说明

    • 默认带编号的层级:

      • artical文档类默认为\section\subsectionsubsubsection三级
      • report/book文档类默认为\chapter\sectionsubsection三级
    • 标准文档类没有提供为章节命令定制格式的功能,该功能可由titlesec宏包实现
  • 扩展
    • 带可选参数的变体:\<command>[<short-title>]{<title>}(<command>为章节命令)含义为标题中使用<title>参数,目录和页眉页脚中使用<short-title>参数
    • *的变体:\<command>*{<title>}(<command>为章节命令)含义为标题不带编号,也不生成目录项和页眉页脚

4.1.2 目录

\tableofcontents
  • 说明

    • 正确生成目录项一般需要编译两次源代码
    • 该命令生成的目录默认不包含带*的章节标题,该功能可使用tocbibind等宏包修改设置
  • 扩展

    • 如果使用了带*的章节标题,但是需要生成该章节的目录项,可以在标题命令后使用命令

      \addcontentsline{toc}{<level>}{<title>}
      

4.1.3 文档结构划分

命令 含义 说明
\appendix 附录 附录部分使用拉丁字母编号
\frontmatter 前言 前言部分使用小写拉丁字母编号,其前的\chapter不编号
\mainmatter 正文 正文部分使用阿拉伯数字编号
\backmatter 后记 后记部分页码格式不变,继续正常计数,其后的\chapter不编号

4.2 标题页

命令 含义 说明
\title{<title>} 标题(必须) 没有标题会报错
\author{<author>} 作者(必须) 没有作者会警告
\date{<date>} 时间 \date默认使用当前时间(\today命令自动生成当前时间)
  • 说明

    • 默认成页

      • article文档类的标题默认不单独成页
      • report和book默认单独成页

      可以在\documentclass命令调用文档类时指定 titlepage/notitlepage选项修改是否单独成页

  • 扩展

    • \title\author命令内可以使用\thanks命令生成标题也的脚注,多个人名之间使用\and隔开

4.3 交叉引用

  • 步骤

    1. 在能够被交叉引用的地方(章节、公式、图标、定理等位置)使用\label命令

      \label{<label-name>}
      
    2. 在其他地方使用\ref\pageref命令,分别生成交叉引用的编号和页码

      \ref{<label-name}  % 生成交叉引用的编号
      \pageref{<label-name}  % 生成交叉引用的页码
      
  • 说明

    • 正确生成交叉引用,一般需要多次编译源代码
    • 可以使用的位置有
      • 章节标题命令之后
      • 行内公式的任意位置
      • 多行公式每一行的任意位置
      • 有序列表环境一个\item之后和下一个\item之前
      • 图表标题命令之后
      • 定理环境内部任意位置
    • 使用不带编号的命令时不要使用\label命令,否则会引用编号不正确

4.4 脚注和边注

命令 含义 说明
\footnote{<note>} 脚注 在某些情况(表格环境、盒子内)下,使用\footnote不能生成脚注,此时需要使用扩展方法(见扩展)
\marginpar[<left-note>]{<right-note>} 边注 如果只给定了<right-note>,则奇偶数页边注都使用<right-note>;如果同时给定了<left-note>,则偶数页边注使用<left-note>
  • 扩展

    • \footnote失效时,可以通过一下两个步骤生成脚注:

      1. 使用\footnotemark为脚注计数
      2. 再合适的位置使用\footnotetext生成脚注

4.5 环境

Note:前文提到过通过<env>来确定环境类型

4.5.1 列表

环境关键字 含义 说明
enumerate 有序列表 自动对列表项编号
itemize 无序列表 不对列表项编号
description 自定义列表 列表项\item后的可选参数必填,以粗体显示
  • 说明

    • 列表可以嵌套使用,最多嵌套四级
    • 列表默认的间距较宽,可通过enumitem宏包定制列表间距
  • 扩展

    • 列表项

      \item[<ch>] ...
      
      • <ch>:自定义符号,可以将有序列表的计数或无序列表的符号替换成自定义的符号
    • 列表符号重定义

      • 无序列表:列表符号由\labelitemi\labelitemiv定义,可通过它们重新定义
      • 有序列表:列表符号由\labelenumi\labelenumiv定义,可通过它们重新定义

4.5.2 对齐

环境关键字 含义
flushleft 左对齐
center 居中
flushright 右对齐
  • 扩展

    • 对齐命令

      命令 含义
      \raggedleft 左对齐
      \centering 居中对齐
      \raggedright 右对齐
    • 对齐环境和命令的区别

      • 对齐环境会在上下文产生一个额外间距;对齐命令不会在上下文产生额外间距,只改变对齐方式

4.5.3 引用

环境关键字 含义 说明
quote 短引用 首行不缩进
quotation 长引用 首行缩进
verse 诗歌引用 首行悬挂缩进
  • 说明

    • 和一般文字相比,引用环境一般有额外左右缩进

4.5.4 代码

环境关键字 含义 说明
verbatim 代码 空格和回车正常显示
verbatim* 代码 空格显示成
  • 说明

    • verbatim宏包提供了\verbatiminput命令来直接从文件中生成代码环境;fancyvrb宏包提供了可定制格式的Verbatim环境;listings宏包可生成关键字高亮的代码环境
  • 扩展

    • 代码命令

      \verb<delim><code><delim>
      
      • <delim>:标明代码的分界位置,前后必须一致,除字母、空格或星号外可以任意选择(不与代码冲突)
    • 区别

      • \verb命令一般不能用作其他命令的参数

4.5.5 其他

环境关键字 含义 说明
abstract 摘要
algorithm 算法 需要调用algorithmalgorithmic宏包

4.6 表格

\begin{tabular}{⟨col-spec⟩}
⟨item1⟩ & ⟨item2⟩ & … \\
\hline
⟨item1⟩ & ⟨item2⟩ & … \\
\end{tabular}
  • 参数

    • <col-spec>:列格式标记,详细介绍见下文
    • <itemN>:单元格内容

其中,&用来分隔单元格;\\用来换行;\hline:绘制行与行之间的横线

  • 说明

    • 直接使用tabular环境会导致表格和周围文字的混排,解决方法为

      1. 使用table浮动体环境(可使用\caption命令添加标题)
      2. tabular环境放置在table环境中

4.6.1 列格式

列格式 说明
l / c / r 单元格内容左对齐/居中/右对齐,不自动换行
p{} 单元格宽度固定为<width>,自动换行
| 绘制单元格竖线
@{} 自定义内容<string>
  • 说明

    • 表格中每行的单元格数目不能多于列格式里l / c / r / p的总数(可以少于),否则报错
    • @格式可在单元格前后插入任意文本,同时消除单元格前后额外添加的间距。@格式可以适当使用充当竖线。特别的,@{}可直接用来消除单元格前后的间距
  • 扩展
    • 简写格式:*{<n>}{<col-spec>}表示<col-spec>指定的内容重复<n>次
    • array宏包
      • 辅助格式><用于给列格式前后加上修饰命令
      • p格式的mb格式,分别表示垂直方向上顶端对齐、居中和底端对齐

4.6.2 列宽

  • tarbularx宏包提供了X格式,这种格式会自动计算列宽,并且多个X列格式平均分配列宽

4.6.3 横线

命令 含义
\hline 横线
\cline{<i>-<j>} 跨越单元格<i>-<j>的横线
  • 扩展

    • 三线表:booktabs宏包提供

      命令 含义
      \toprule 顶部横线
      \midrule 中部横线
      \bottomrule 底部横线
      \cmidrule{<i>-<j>} 跨越单元格<i>-<j>的横线

4.6.4 合并单元格

合并列

\multicolumn{<n>}{<col-spec>}{<content>}
  • 参数

    • <n>:要合并的列数

    • <col-spec>:合并后的列格式,只允许出现一个l / c / rp格式。如果合并前的单元格前后带有表格线|,合并后的列格式也要带有表格线|

    • <content>:合并后的内容

合并行

\multirow{<n>}{<width>}{<content>}
  • 参数

    • <n>:要合并的行数

    • <width>:合并后的宽度

    • <content>:合并后的内容

4.6.5 嵌套

  • 在单元格中嵌套一个小表格可以拆分单元格

    • 注意:需要使用\multicolumn命令配合@{}格式可以把单元格的额外边距去掉,使得嵌套的表格线能和外层的表格线正确相连
    • 扩展如果不需要为拆分的单元格画线,并且指在垂直方向上拆分时,可以使用makecell宏包提供的\makecell命令

4.6.6 行距

  • 方式一:修改参数\arraystretch
  • 方式二:给换行命令\\添加可选参数
    • 适用在行间不加横线的表格
    • 下一行的第一个单元格中不能使用[](将[]放在{}内)

4.7 图片

  • 步骤

    1. 设置编译器

      • LaTeX + dvipdfmx:调用宏包时需要指定dvipdfmx选项6
      • pdfLaTeX/XeLaTeX:无需设置
    2. 调用graphicx宏包

    3. 插入图片

      \includegraphics[<options>]{<filename>}
      
      • <options>:选项,常用的参数如下

        参数 含义
        width=<width> 将图片宽度设置为<width>
        height=<height> 将图片高度设置为<height>
        scale=<scale> 将图片缩放为<scale>倍
        angle=<angle> 将图片逆时针旋转<angle>度
      • <filename>:图片文件名(路径名)

  • 扩展

    • \graphicspath命令用于声明一个或多个图片文件存放的目录,使用这些目录的图片时可以直接写文件名

4.8 盒子

盒子时LaTeX排版的基本元素:每一行是一个盒子,里面的文字从左到右依次排列;每一页也是一个盒子,各行文字从上到下排列

命令 含义 说明
\mbox{...} 水平盒子 内容只有一行,不允许分段
\makebox[<width>][<align>]{...} 水平盒子 1. 内容只有一行,不允许分段
2. <width>:盒子的宽度
3. <align>:内容的对齐方式(可选择l(左对齐)c(居中)r(右对齐)s(分散对齐))
\fbox{...} 带边框的水平盒子 \mbox
\framebox[<width>][<align]{...} 带边框的水平盒子 \makebox
\parbox[<align>][<height>][<inner-align>]{<width>}{...} 垂直盒子 1. <align>:盒子和周围文字的对其情况
2. <height>:盒子的高度
3. <inner-align>:内容的对齐方式(可选择t(顶部对齐)c(居中)b(底部对齐)s(分散对齐))
4. <width>:盒子的宽度
\rule[<raise>]{<width>}{<height>} 标尺盒子 1.<raise>:相对于基线提高的高度(可正可负)
2. <width>:盒子的宽度
3. <height>:盒子的高度

4.9 浮动体

浮动体的内容可以脱离上下文,放置在合适的位置

\begin{<env>}[<placement>]
...
\end{<env>}
  • 参数

    • <env>:表示浮动体的类型,可以是figuretable
    • <placement>:使用一些符号来表示浮动体允许排版的位置,默认位置为[tbp]
    参数 含义
    h 当前位置
    t 顶部
    b 底部
    p 单独成页
    ! 决定位置时忽略限制
  • 说明

    • 排版位置与参数顺序无关,LaTeX总是以h-t-b-p的优先级决定浮动提的位置
    • 限制浮动提的个数(每页不超过3个,其中顶部不超过2个,底部不超过1个)和浮动体占页面的比例(默认顶部不超过70%,底部不超过30%)
    • \clearpage命令会在另起一页前将所有推迟处理的浮动体排版成页,忽略htbp等位置参数
    • float宏包提供的浮动提位置参数H会取消浮动机制(将浮动体视为一般盒子),不能与htbp!混用
  • 扩展

    • 双栏排版环境下,table*figure*环境用来排版跨栏的浮动体,此时<placement>参数只能使用tp两个参数

4.9.1 标题

命令 含义 说明
\caption{<title>} 带编号标题 <title>:浮动体标题
\caption*{<title>} 不带编号标题 <title>:浮动体标题
\caption[<short-title>]{<title>} 带短标题的标题 1.<title>:浮动体标题
2. <short-title>:目录中浮动体短标题
  • 扩展

    • 交叉引用:\caption后可以跟\label命令标记交叉引用
    • 标题前缀:修改\figurename\tablename的内容可以修改浮动体的标题前缀
    • 生成目录:\listoftables\listoffigures课可以生成浮动体格子的目录

5 公式排版

命令(环境) 含义 说明
$...$ 行内公式
equation环境 带编号的行间公式 1. 可以使用\label\ref生成交叉引用
2. amsmath\eqref命令为引用自动添加圆括号;\tag命令手动修改公式编号;\notag命令取消公式编号(等效于\nonumber
equation*环境 不带编号的行间公式
displaymath环境 不带编号的行间公式
\[...\] 不带编号的行间公式
  • 说明

    • 数学公式排版需要导入amsmath(核心)、amsfontsamssymbamsthm等宏包
    • 行间公式的对齐、编号位置等有文档类选项控制:fleqn选项控制公式左对齐,leqno控制编号放在公式左边
    • 数学模式
      • 输入的空格被忽略。符号间的间距由符号的性质决定
      • 不允许有空行(分段),无法使用\\命令手动换行
      • 所有字母当作数学公式中的变量处理,字母间距与文本模式不一致,也无法生成单词间的空格。如果需要输入整体文本,可以使用\mathrm命令或amsmath\text命令

5.1 数学符号

5.1.1 一般符号

命令 符号
\alpha α
\beta β
\Gamma Γ
\Delta Δ
\infty
\dots\ldots
\cdots
\vdots
\ddots

5.1.2 上下标和导数

命令 符号
^ 上标
_ 下标
' 导数
  • 说明

    • 上下标只作用于其后的一个符号
    • 如果需要将多个符号作为上下标,需要将其放在花括号中

5.1.3 分式和根式

命令 符号
\frac{<molecular>}{<denominator>} 分式
\sqrt{<base>} 算术平方根
\sqrt[<n>]{<base>} 平方根
  • 参数

    • <molecular>:分子
    • <denominator>:分母
    • <base>:底数
    • <n>:次数
  • 扩展
    • \dfrac命令表示行内正常大小的分式,\tfrac表示行内非正常大小的分式

5.1.4 常规运算符

命令 符号
+、-、*、= +、-、*、=
\times ×
\div ÷
\cdot ·
\pm ±
\mp
\div ÷
\nabla
\partial
\pmod\bmod 求模
  • 扩展

    • 常用函数

      \<func>
      
      • 参数

        • <func>:函数名,包括三角函数、双曲三角函数、指数函数、对数函数、最值、上下界、极限、行列式等
    • 自定义运算符

      \DeclareMathOperator{\argh}{argh}  % 带上下限的运算符
      \DeclareMathOperator*{\nut}{Nut}  % 带上下限的运算符
      

5.1.5 关系运算符

命令 符号
>、< >、<
\ge
\le
\ne
\approx
\equiv
\propto
\sim

5.1.6 巨算符

命令 符号
\sum
\prod
\int
\oint
  • 说明

    • 巨算符在行内公式和行间公式中的大小和形状不同
    • \limits使得上下标位于上下方,\limits使得上下标位于右上、右下方
  • 扩展
    • \substack命令可以在下限位置书写多行表达式,\subarray可以指定多行表达式的对齐方式

5.1.7 重音和上下括号

命令 符号
\dot 单点重音
\ddot 双点重音
\vec\overrightarrow 向量箭头
\hat 上尖括号
\overline 上划线
\underline 下划线
\widehat 宽重音
\overbrace 上括号
\underbrace 下括号

5.1.8 箭头

命令 符号
\leftarrow\gets
\rightarrow\to
\xleftarrow 可伸展的左箭头
\xrightarrow 可伸展的右箭头

5.1.9 括号和定界符

命令 符号
() ()
[] []
\{\} {}
\langle\rangle ⟨⟩
  • 扩展

    • \left\right命令可以改变定界符的大小;两者必须成对使用,包含的公式不可以换行;如果要分开使用,另一个要写成\left.\right.
    • \big\Big\bigg\Bigg等命令可以生成固定大小的定界符。更常用的形式为\bigl\Bigl\biggl\Biggl\bigr\Bigr\biggr\Biggr等,且不要求成对出现,包含的公式可以换行

5.2 多行公式

5.2.1 长公式换行

\begin{multiline}
... \\
...
\end{multiline}
  • 说明

    • 公式中使用\\命令换行
    • 公式的编号放在最后一行
    • 公式的首行左对齐、末行右对齐,其余居中
  • 扩展
    • multiline*环境排版不带编号的换行长公式
    • 换行原则
      • 优先在等号之前换行
      • 其次在加减号之前换行
      • 再次在乘除号之前换行
      • 其他位置避免换行

5.2.2 多行公式

\begin{align}
...
\end{align}
  • 说明

    • 公式使用&分隔为两部分并对齐,分隔符通常放在等号左边
    • 该环境中每个公式都会编号(可以使用\notag取消某行的编号)
    • 为了让加号对齐,需要把分隔符放在等号右边,此时需要在等号后添加一对括号{}以产生正常的间距
    • 一行有多组公式时,公式间用&分隔
  • 扩展
    • 如果公式不需要等号对齐,只需罗列,可以使用gather环境

5.3 数组和矩阵

5.3.1 二维数组

\begin{array}
...
\end{array}
  • 说明

    • 类似于tabular环境,需要定义列格式
    • 使用\\命令换行
  • 扩展
    • 也可以使用cases环境实现

5.3.2 矩阵

环境关键字 含义
matrix 不带定界符的矩阵
pmatrix 带定界符()的矩阵
bmatrix 带定界符[]的矩阵
vmatrix 带定界符`
Bmatrix 带定界符{}的矩阵
Vmatrix 带定界符‖‖的矩阵

5.4 公式中的间距

命令 含义
\quad 1个中文字符宽度的空格
\qquad 2个中文字符宽度的空格
\<Space> 1 / 3个中文字符宽度的空格
\, 1 / 7个中文字符宽度的空格
\: 1 / 6个中文字符宽度的空格
\; 1 / 3个中文字符宽度的空格
\! - 1/ 6个中文字符宽度的空格

5.5 字体

5.5.1 字体

命令 说明
\mathnormal{<content>}
\mathrm{<content>}
\mathit{<content>}
\mathbf{<content>}
\mathsf{<content>}
\mathtt{<content>}
\mathcal{<content>} 需调用eucal宏包
\mathscr{<content>} 需调用mathrsfs宏包
\mathfrak{<content>} 需调用amssymbeufrak宏包
\mathbb{<content>} 需调用amssymb宏包
  • 参数

    • <content>:设置字体的内容

5.5.2 尺寸

命令 说明
\displaystyle 行间公式尺寸
\textstyle 行内公式尺寸
\scriptstyle 上下标尺寸
\scriptscriptstyle 次级上下标尺寸

5.5.3 加粗

环境关键字 说明
\boldsymbol 需调用amsbsy宏包
\bm 需调用bm宏包

5.6 定理

\newtheorem{<theorem-env>}{<title>}[<section-level>]
\newtheorem{<theorem-env>}[<counter>]{<title>}
  • 参数

    • <theorem-env>:定理环境名称
    • <title>:定理环境标题
    • <section-level>:章节级别,定理序号为章节的下一级序号
    • <counter>:自定义的计数器名称
  • 说明

    • 默认的定理环境格式为粗体标签、斜体正文、定理名用小括号包裹
  • 扩展

    • 使用amsthm宏包自定义定理格式

      \theoremstyle{<style>}
      
      • 参数

        • <style>:定理格式,预定义的有三种

          格式 说明
          plain LaTeX原始格式
          definition 使用粗体标签、正体内容
          remark 使用斜体标签、正体内容
      • 扩展

        • \newtheoremstyle命令可以自定义定理格式
    • 使用amsthm宏包的proof环境排版定理的证明过程

      \begin{proof}
      ...
      \end{proof}
      
      • 说明

        • 环境末尾会自动添加证毕符号
        • 如果行末是一个不带编号的公式,符号会另起一行,可使用\qedhere命令将符号放在公式末尾
        • 证毕符号使用\qedsymbol命令定义,可以使用\renewcommand命令(见下文)进行修改

6 排版样式

6.1 字体

6.1.1 字体

全局命令 局部命令 字体英文 字体中文
\rmfamily \textrm{...} roman 衬线字体(罗马体)
\sffamily \textsf{...} sans serif 无衬线字体
\ttfamily \texttt{...} typewriter 等宽字体
\mdseries \textmd{...} medium 正常粗细(中等)
\bfseries \textbf{...} bold face 粗体
\upshape \textup{...} upright 直立体
\itshape \textit{...} italic 意大利斜体
\slshape \textsl{...} slanted 倾斜体
\scshape \textsc{...} small caps 小字母大写
\em \emph{...} emphasized 强调,默认斜体
\normalfont \textnormal{...} normal font 默认字体

6.1.2 字号

命令 10pt选项(默认) 11pt选项 12pt选项
\tiny 5pt 6pt 6pt
\scriptsize 7pt 8pt 8pt
\footnotesize 8pt 9pt 10pt
\small 9pt 10pt 10.95pt
\normalsize 10pt 10.95pt 12pt
\large 12pt 12pt 14.4pt
\Large 14.4pt 14.4pt 17.28pt
\LARGE 17.28pt 17.28pt 20.74pt
\huge 20.74pt 20.74pt 24.88pt
\Huge 24.88pt 24.88pt 24.88pt
  • 扩展

    • 设置任意大小的字号的命令

      \fontsize{<size>}{<base line-skip>}
      
      • 如果需要作用于局部,需要使用花括号分组
    • 更改字体

      % 西文字体
      \setmainfont[<font-features>]{<font-name>}
      \setsansfont[<font-features>]{<font-name>}
      \setmonofont[<font-features>]{<font-name>}% 中文字体(需要导入xeCJK宏包)
      \setCJKmainfont[<font-features>]{<font-name>}
      \setCJKsansfont[<font-features>]{<font-name>}
      \setCJKmonofont[<font-features>]{<font-name>}
      
      • <font-features>:手动配置对应的粗体和斜体的选项
      • <font-name>:字体的文件名(带扩展名)或字体的英文名称

6.2 段落

6.2.1 长度单位

单位 含义
pt 点阵宽度,1 / 72.27in
bp 点阵宽度,1 / 72in
in 英寸
cm 厘米
mm 毫米
em 当前字号下大写字母M的宽度,常用于水平距离的设定
ex 当前字号下小写字母x的宽度,常用于锤子距离的设定
  • 弹性长度:<base> plus <offset1> minus <offset2>表示[<base> - <offset2>, <base> + <offset1>],其中<base>、<offset1>和<offset2>都需要带单位

  • 长度的数值可以用长度变量本身或其倍数来表达

  • 自定义长度变量

    命令 含义 说明
    \newlength{<length-name>} 定义长度变量 <length-name>:长度变量名
    \setlength{<length-name>}{<length>} 长度变量赋值 1. <length-name>:长度变量名
    2. <length>:长度值
    \addtolength 增加变量长度 1. <length-name>:长度变量名
    2. <length>:长度值

6.2.2 行距

\linespread{<factor>}
  • 参数

    • <factor>:作用于行距。缺省的基础行距是1.2倍字号大小
  • 说明

    • 字号的改变是即时生效的,而行距的改变直到文字分段时才生效
  • 扩展

    • 如果要局部的改变某个段落的行距,需要使用命令\selectfont使\linespread命令立即生效

6.2.3 段落格式

\setlength{<format>}{<length>}
  • 参数:

    • <format>:缩进格式,由以下命令定义
    命令 含义
    \leftskip 左缩进
    \rightskip 右缩进
    \parindent 首行缩进
    • <length>:缩进的距离
  • 说明

    • 和行距一样,在分段时生效
    • 默认情况下,章节标题命令后的第一段不缩进,但是可以调用indextfirst宏包进行修改
  • 扩展

    • 局部不缩进命令

      \noindent
      
    • 局部缩进命令

      \indent
      
      • 多个\indent命令可以累加缩进量

6.2.4 水平间距

\hspace{<length>}
  • 参数

    • <length>:间距长度
  • 说明

    • 如果该命令位于一行的开头或者结尾,可能会因为换行而不显示
    • \quad\qquad命令分别相当于\hspace{1em}\hspace{2em}
  • 扩展

    • 使用\hspace*命令生成的间距不会应为换行而不显示

    • 弹性长度命令:基础长度为0pt,可以无限延伸直至占满可用空间(可用于水平长度和垂直长度)

      \stretch{<n>}
      
      • <n>:权重参数。如果一行内出现多个\stretch{<n>},则这一行的所有可用空间按照权重进行分配

6.2.5 垂直间距

\vspace{<length>}
  • 参数

    • <length>:间距长度
  • 说明

    • 如果该命令位于一页的顶端或者底端,可能会因为分页而不显示
    • 预定义的垂直间距:\bigskip\medskip\smallskip
    • 该命令之引入垂直间距而不会换行,而\\命令在引入垂直间距的同时还会换行
  • 扩展

    • 使用\vspace*命令生成的间距不会因为分页而不显示

6.3 页面

6.3.1 页面参数

% 方式一
\usepackage{geometry}
\geometry{<geometry-settings>}% 方式二
\usepackage[<geometry-settings>]{geometry}
  • 参数

    • <geometry-settings>:页面参数,包括上下(垂直)左右(水平)间距等,多以键值对的形式给出
  • 说明

    • geometry宏包调用时需要注意:

      • LaTeX + dvipdfmx命令下需要指定选项dvipdfm
      • pdfLaTeXXeLaTeX命令下不需要

6.3.2 内容垂直对齐

\raggedbottom
\flushbottom

6.3.3 分栏

% 一栏
\oneclumn% 两栏
\twocolumn[<one-column top material>]
  • 参数

    • <one-column top material>:双栏模式下排版一部分单栏内容
  • 说明

    • 切换单/双栏排版时会另起一页
    • 双栏模式下\newpage命令换栏,\clearpage 命令换页
    • 双栏排版下每一栏的宽度为\columnwidth,即\textwidth 减去\columnsep 的差除以2
    • 两栏之间有一道竖线,宽度为\columnseprule(默认为零)
  • 扩展

    • 利用multicol宏包的环境multicols分栏

      \begin{multicols}{<n>}
      ...
      \end{multicols}
      
      • <n>:要分成的栏数
    • 说明

      • multicol宏包能够在一页中切换单栏/多栏,也能跨页分栏且栏高分布平衡
      • multicols环境中浮动体失效,只能使用跨栏的浮动体或者float宏包提供的H参数固定浮动体的位置

6.3.4 页眉页脚

% 全局样式
\pagestyle{<page-style>}% 当前页样式
\thispagestyle{<page-style>}
  • 参数

    • <page-style>:页面样式,可选的样式如下
    样式 说明
    empty 页眉页脚为空
    plain 页眉为空,页脚为页码。(articlereport文档类和book文档类第一章默认样式)
    headings 页眉为章节标题和页码,页脚为空(book文档类默认)
    myheadings 页眉为页码及\markboth\markright命令手动指定的内容,页脚为空
    • 说明

      • article 文档类:twoside 选项偶数页为页码和节标题,奇数页为小节标题和页码;oneside 选项页眉为节标题和页码
      • book/report 文档类:twoside 选项偶数页为页码和章标题,奇数页为节标题和页码;oneside 选项页眉为章标题和页码
  • 说明:

    • 默认页眉的内容全部转为大写字母,可以通过以下命令修改

      • book/report文档类:\chaptermark\sectionmark
      • article文档类:\sectionmark\subsectionmark
  • 扩展

    • 改变页码样式命令:每次修改后页码充值为1

      \pagenumbering{<style>}
      
      • <style>:页码样式,默认为arabic(阿拉伯数字),可修改为roman(小写罗马数字)、Roman(大写罗马数字)等
    • 修改页眉页脚内容命令

      \markright{<right-mark>}\markboth{<left-mark>}{<right-mark>}
      
      • <left-mark>:左页(偶数页)的内容
      • <right-mark>:右页(奇数页)的内容
    • fancyhdr宏包修改页眉页脚

      • 步骤

        1. 使用样式
        \pagestyle{fancy}
        
        1. 定义页眉页脚
        命令 含义
        \fancyhf[<position>]{<content>} 定义页眉和页脚
        \fancyhead[<position>]{<content>} 定义页眉
        \fancyfoot[<position>]{<content>} 定义页脚
        • <positon>:可以是L(左) / C(中) /R(右)O(奇数页) / E(偶数页)的字母组合
        • <content>:为显示的内容
      • 扩展

        • 使用\fancypagestyle命令自定义页眉页脚样式

          % 自定义页眉页脚样式mystyle
          \fancypagestyle{mystyle}{ %
          \fancyhf{}
          \fancyhead{...}
          \fancyfoot{...}
          }
          % 使用样式
          \pagestyle{mystyle}
          

7 特色工具

7.1 参考文献:BIBTEX工具

%基本的使用
\cite{<citation>}\begin{thebibliography}{<widest-label>}
\bibitem[<item-no>]{<citation>} ...
\end{thebibliography}
  • 参数

    • <citation>:引文的参考文献的标签
    • <item-no>:自定义参考文献的编号。如果省略,则使用自然排序给定的序号
    • <widest-label>:参考文献序号的最大宽度,如99意味着不超过两位数
  • 扩展
    • \cite命令可带一个可选参数,为引用的编号后加上额外的内容

7.1.1 BiBTeX数据库

BiBTeX数据库以.bib作为扩展名,其内容是若干个文献条目

常用的类型条目有

类型 含义 必需字段 可选字段
article 学术论文 author, title, journal, year volume, number, pages, doi等
book 书籍 author/editor, title, publisher, year volume/number, series, address等
incollection 论文集中的一篇 author, title, booktitle, publisher, year editor, volume/number, chapter, pages, address等
inbook 书中的一章 author/editor, title, chapter/pages, publisher, year volume/number, series, address等

7.1.2 BiBTeX样式

\bibliographystyle{<bst-name>}
  • 参数

    • <bst-name>:.bst样式文件名,不带扩展名
  • 扩展

    • 列出未被引用的文献

      \nocite{<citation>}\nocite{*}  % 列出所有未被引用的文献
      
      • 参数

        • <citation>:引文的参考文献的标签
    • 列出参考文献

      \bibliography{<bib-name>}
      
      • 参数

        • <bib-name>:BiBTeX数据库的文件名,不带扩展名.bst
    • natbib宏包

      • 使用人名-年份引用文献

        \citep{<citation>}
        \citet{<citation>}
        
        • 参数

          • <citation>:引文的参考文献的标签
      • 数字引用(支持序号压缩)

        \usepackage[numbers,sort&compress]{natbib}
        

7.2 索引:makeindex工具

  1. 导言区调用makeidx宏包,并开启索引的收集

    \usepackage{makeidx}
    \makeindex
    
  2. 在需要索引的地方使用\index命令;需要输出索引的地方使用\printindex命令

7.3 颜色

% 方式一
\color{<color-name>}% 方式二
\color[<color-mode>]{<code>}
  • 参数

    • <color-name>:已定义的颜色名
    • <color-mode>:颜色模式,color宏包rgb,cmyk和gray等模式,xcolor还支持hsb等
    • <code>:颜色值
  • 说明
    • 需要导入颜色宏包colorxcolor

7.3.1 自定义颜色

\definecolor{<color-name>}{<color-mode>}{<code>}
  • 参数

    • <color-name>:颜色名

    • <color-mode>:颜色模式

    • <code>:颜色值

7.3.2 带颜色文本

% 方式一
\textcolor{<color-name>}{<content>}% 方式二
\textcolor[<color-mode>]{<code>}{<content>}
  • 参数

    • <color-name>:颜色名

    • <content>:文本内容

    • <color-mode>:颜色模式

    • <code>:颜色值

7.3.3 带颜色盒子

% 方式一
\colorbox{<color-name>}{<content>}
\fcolorbox{<fcolor-name>}{<color-name>}{<content>}% 方式二
\colorbox[<color-mode>]{<code>}{<content>}
\fcolorbox[<color-mode>]{<fcode>}{<code>}{<content>}
  • 参数

    • <color-name>:填充颜色名

    • <fcolor-name>:边框颜色名

    • <content>:文本内容

    • <color-mode>:颜色模式

    • <code>:填充颜色值

    • <fcode>:边框颜色值

7.4 超链接

  1. 配置参数

    \hypersetup{<opt1>, <opt2>=<value>, ...}
    \usepackage[<opt1>, <opt2>=<value>, ...]{hyperref}
    
    • <optN>:配置参数,常用参数如下

      参数 默认值 含义
      colorlinks=<true/false> false 链接文字是否带颜色
      hidelinks 取消链接的颜色和边框
      pdfborder={<n>, <n>, <n>} 0 0 1 超链接边框设置,设置为0 0 0可取消边框
      bookmarks=<true/false> true 是否生成书签
      bookmarksopen=<true/false> false 是否展开书签
      bookmarksnumbered=<true/false> false 书签是否带章节编号
      CJKbookmarks=<true/false> false 使用CJK宏包 / GBK编码排版中文时必须要设定的参数,需要将生成的.out文件用工具处理编码,或调用xCJK2uni宏包
      unicode 使用CJKutf8宏包 / UTF-8编码排版中文时必须设定的参数
      pdftitle=<string> 标题
      pdfauthor=<string> 作者
      pdfsubject=<string> 主题
      pdfkeywords=<string> 关键词
      pdfstartview=<Fit/FitH/FitV> Fit 设置PDF页面以适合页面(默认)/适合宽度/适合高度等方式显示
  2. 添加超链接

    \url{<url>}  % 带颜色的超链接
    \nolinkurl{<url>}  % 不带颜色的超链接
    \href{<url>}{<text>}  % 自定义文字的超链接
    
    • 参数

      • <url>:超链接地址
      • <text>:超链接显示的内容
    • 说明

      • 默认的超链接文字外有一个带颜色的边框(打印PDF是不打印该边框),可以指定colorlinks参数或修改pdfborder参数去掉边框
    • 扩展

      • 标签超链接

        \hyperref{<label>}{<text>}
        
        • 参数

          • <label>:超链接的标签
          • <text>:超链接显示的内容

7.5 PDF

7.5.1 书签

\pdfbookmark[<level>]{<bookmark>}{<anchor>}
  • 参数

    • <level>:书签的层级,默认为0
    • <bookmark>:书签名称
    • <anchor>:书签项使用的锚点

7.5.2 文档属性

见上表

8 自定义

8.1 命令

8.1.1 定义新命令

\newcommand{<name>}[<num>]{<definition>}
  • 参数

    • <name>:命令名,包括反斜线
    • <num>:参数个数(最大为9)。如果缺省,默认为0
    • <definition>:命令的定义
  • 说明
    • 不能定义与现有命令重名的命令
  • 扩展
    • \providecommand命令:在命令不存在时,定义新命令;否则,仍沿用命令原来的定义

8.1.2 重定义命令

\renewcommand{<name>}[<num>]{<definition>}
  • 参数

    • <name>:命令名,包括反斜线
    • <num>:参数个数(最大为9)。如果缺省,默认为0
    • <definition>:命令的定义,定义中使用#n指定第n个参数,起到占位的作用

8.2 环境

8.2.1 定义新环境

\newenvironment{<name>}[<num>]{<before>}{<after>}
  • 参数

    • <name>:环境名
    • <num>:参数个数(最大为9)。如果缺省,默认为0
    • <before>:内容在环境包含的文本之前处理
    • <after>:内容遇到\end{<name>}命令时处理

8.2.2 重定义环境

\renewenvironment{<name>}[<num>]{<before>}{<after>}
  • 参数

    • <name>:环境名
    • <num>:参数个数(最大为9)。如果缺省,默认为0
    • <before>:内容在环境包含的文本之前处理
    • <after>:内容遇到\end{<name>}命令时处理

8.3 宏包和文档类

8.3.1 编写文档类

  1. 文档类以.cls作为扩展名

  2. 开头使用命令

    \ProvidesClass{<class-name>}
    
    • 参数

      • <class-name>:文档类名,需要与文件名一致
  3. 调用文档类

    \LoadClass[<options>]{<class-name>}
    
    • 参数

      • <options>:文档类选项
      • <class-name>:文档类名

8.3.2 编写宏包

  1. 宏包以.sty作为扩展名

  2. 开头使用命令

    \ProvidesPackage{<pkg-name>}
    
    • 参数

      • <pkg-name>:宏包名,需要与文件名一致
  3. 在宏包中调用其他宏包

    \RequirePackage[<options>]{<pkg-name>}
    
    • 参数

      • <options>:宏包选项
      • <pkg-name>:宏包名

8.4 计数器

命令 计数器 说明
\chapter chapter 有上下级关系
\section section 有上下级关系
\part part 独立
\enumerate enumi, enumii, enumiii, enumiv 有上下级关系
\table table article中独立,book/report中以chapter为上级计数器
\figure figure article中独立,book/report中以chapter为上级计数器
\equation equation article中独立,book/report中以chapter为上级计数器
\footnote footnote
页码 page
  • 说明

    • 章节编号的深度secnumdepth:如果章节的层级大于该值,那么章节的标题、在页眉页脚的标题都不编号;article文档类中默认为3,bookreport文档类中默认为2;可以通过\setcounter命令设置该值
    • 目录深度tocdepth:如果章节的层级大于该值,那么章节的标题不会写入目录项;article文档类中默认为3,bookreport文档类中默认为2;可以通过\setcounter命令设置该值

8.4.1 定义计数器

\newcounter{<counter-name>}[<parent-counter-name>]
  • 参数

    • <counter-name>:计数器名
    • <parent-counter-name>:父计数器名

8.4.2 修改计数器

\setcounter{<counter-name>}{<number>}  % 将计数器<counter-name>的值设置为<number>
\addtocounter{<counter-name>}{<number>}  % 将计数器<counter-name>的值增加<number>
\stepcounter{<counter-name>⟩}  % 将计数器<counter-name>的值加1,并将下级计数器置0
  • 参数

    • <counter-name>:计数器名
    • <number>:数值

8.4.3 修改输出格式

\renewcommand\the<counter>{<format>}
  • 参数

    • \the<counter>:计数器的输出格式定义,如\thechapter\thesection

    • <format>:计数器格式。常用的格式如下

      命令 样式 范围
      \arabic 阿拉伯数字(默认)
      \alph 小写字母 0-26
      \Alph 大写字母 0-26
      \roman 小写罗马数字 非负整数
      \Roman 大写罗马数字 非负整数
      \fnsymbol 一些列符号,用于\thanks命令生成的脚注 0-9
  • 说明

    • 计数器的输出格式还可以利用其他字符,也可以与其他计数器输出格式的组合

8.5 可定制命令和参数

8.5.1 标题名称/前后缀等

命令 默认值 含义
\partname Part \part命令生成的标题前缀
\chaptername Chapter \chapter命令生成的标题前缀
\appendixname Appendix \appendix命令生成的附录部分的章标题前缀
\abstractname Abstract abstract环境生成的标题名称
\contentsname Contents \tableofcontents命令生成的目录标题
\listfigurename List of Figures \listoffigures命令生成的插图目录标题
\listtablename List of Tables \listoftables命令生成的表格目录标题
\figurename Figure figure浮动体中\caption命令生成的标题前缀
\tablename Table table浮动体中\caption命令生成的标题前缀
\refname References thebibliography环境或\bibliography命令生成的参考文献标题(article文档类)
\bibname Bibliography thebibliography环境或\bibliography命令生成的参考文献标题(book/report文档类)
\indexname Index \printindex命令生成的索引标题
  • 说明

    • 以上所有命令可以使用\renewcommand命令来修改

8.5.2 长度

命令 默认值 含义
\fboxrule 0.4pt \fbox\framebox等带框盒子的线宽
\fboxsep 3pt \fbox\framebox等带框盒子的内边距
\arraycolsep 5pt array环境的表格项前后的间距
\tabcolsep 6pt tabular环境的表格项前后的间距
\arrayrulewidth 0.4pt 表格线宽
\doublerulesep 2pt 连续两根表格线之间的间距
\abovecaptionskip 10pt \caption命令位于表格下方时,与上方图表的间距
\belowcaptionskip 0pt \caption命令位于表格上方时,与下方图表的间距
\columnsep 10pt 双栏排版下两栏的间距
\columnseprule 0pt 双栏排版下两栏之间竖线的宽度
  • 说明

    • 以上所有命令可以使用\setlength命令来修改

参考资料

  1. LaTeX基础——格式与命令 - FBshark - 博客园 (cnblogs.com)
  2. 一份其实很短的 LaTeX 入门文档 | 始终 (liam.page)
  3. 中文版Latex常用语法大全教程_tianzong2019的博客-CSDN博客_latex语法
  4. LaTeX详细教程+技巧总结_NSJim的博客-CSDN博客_latex使用教程
  5. LaTeX基础使用手册 | Personal Blog (albertyzp.github.io)
  6. LaTeX公式手册(全网最全) - 樱花赞 - 博客园 (cnblogs.com)
  7. LaTeX数学公式-详细教程_NSJim的博客-CSDN博客_latex数学公式

【工具篇-LaTeX】LaTeX语法相关推荐

  1. matlab tex语法,latex基本语法

    LaTex基本语法 1.LaTeX文件的框架如下: \documentclass{article} \begin{document} This is the body of the article \ ...

  2. LaTeX 入门-语法

    LaTeX 入门 - 语法 一.使用 LaTeX 优点 这里首先说明,并不是因为 Word 排版不好才使用 LaTeX.之所以 Word 排版不美观,很大一部分是因为上手太简单,很少有人在使用 Wor ...

  3. Latex 公式 语法 [维基百科]

    Latex 公式 语法 - [维基百科] 维基百科地址 维基百科-离线网页 1.PDF 2.html 一个[Latex在线编辑&公式转图片]网站 一个ubuntu下的Latex公式编辑器 后续 ...

  4. LaTeX 进阶语法

    文章目录 LaTeX进阶语法 一. 样式排版 1. 字体和字号 1.1 字体样式 1.2 字号 1.3 ctex宏包更改中文字体 1.4 文字装饰 2. 段落格式和间距 2.1 长度和长度变量 2.2 ...

  5. latex c语言字体,LaTex基本语法-和word对应的字体等(转).doc

    LaTex基本语法-和word对应的字体等(转) LaTex基本语法-和word对应的字体等(转) LaTex基本语法 1.LaTeX文件的框架如下:\documentclass{article}\b ...

  6. LaTeX 常用语法格式总结 列表计数、图、公式、表格、参考文献环境

    LaTeX 常用语法格式总结 文章目录 LaTeX 常用语法格式总结 列表与计数 列表 **enumerate**与**itemize**默认结构 **enumerate**与**itemize**自 ...

  7. 全面整理Typora的Latex数学公式语法

    全面整理Typora的Latex数学公式语法 1.公式输入 行间公式 "段落"->"公式块" Command+Option+B $$+回车 行内公式 $$ ...

  8. 在VSCode中使用LaTex,语法检测插件grammarly

    整个文章分为以下几个内容,打 * 的是必须要安装的 LaTex 安装* VSCode 安装* 在 VSCode 中配置 LaTex Grammarly语法检测插件 LaTex 安装* latex的下载 ...

  9. 机器学习从理论到工程的第二步-开发环境与工具篇(下)

    好啦~继续昨天的<第二步--开发环境与工具篇(上)>~ 其实有点尴尬啦,本来想一篇讲完的,结果小夕太啰嗦了,还没有开始讲正文,就写了快2000字了...所以说,这一篇是上一篇的正文... ...

最新文章

  1. 请问有办法加速TTS的反应时间吗
  2. 简单看看PageHelper的配置
  3. ocr移动端车牌识别技术特点
  4. 向xxxhub发了一个数据包,发现了···
  5. twitter api使用_使用P2创建自己的Twitter风格的组博客
  6. 阿里研究院入选中国企业智库系统影响力榜
  7. linux-用户管理
  8. 基于OPENldap搭建postfix 虚拟用户
  9. 企业级工作流解决方案(十六)--工作流--工作流实体模型
  10. matlab第六章课后答案,matlab作业第6章
  11. Judge whether the user is in some windows group.
  12. vmware tools 的安装(Read-only file system 的解决)
  13. 中文语音识别系统搭建流程笔记
  14. Python3之logging模块
  15. MongoDB干货系列1-定期巡检之Mtools
  16. 全网首发:怎样加快android doubango的编译速度?
  17. Chapter 5 : 索引和算法
  18. 微信小程序开发(十二)小程序画布组件canvas
  19. Python关键词百度指数采集,抓包Cookie及json数据处理
  20. 软件工程网络15个人作业3(201521123010徐璐琳)

热门文章

  1. 如何利用并发性加速你的python程序(二):I/O 绑定程序加速...
  2. 视频录制30帧还是60帧清晰?
  3. 10 款最佳剪贴板管理器
  4. 集丰照明|无主灯智能照明设计,从构想到实现的“八步走”
  5. 【观察】紫光云正用“中国速度”,实现公有云“中国奇迹”
  6. linux系统调用和内存管理以及栈帧
  7. gitlab邮箱配置 及 163邮箱发件失败
  8. 专科计算机信息管理专业毕业论文,《计算机信息管理》专业的毕业论文参考题目...
  9. 华师2017高等工程数学期末试题
  10. Share a link about Resposive Web Design