:LaTeX专栏003|入门篇-排版基础知识-经验观点免费ppt模版下载-道格办公

LaTeX专栏003|入门篇-排版基础知识

工具。在本篇文章中,我们将介绍一些LaTeX排版的基础知识,帮助大家更好地开始使用LaTeX。 1. 文档结构:在LaTeX中,一个文档通常由导言区和正文组成。导言区包含了一些全局设置和宏包引用等内容,而正文是实际的文章内容。 2. 命令和环境:LaTeX使用命令和环境来控制排版效果。命令以反斜杠(\)开头,后接命令名称和参数(如果有)。环境由\begin{环境名称}和\end{环境名称}来定义,环境内的内容将受到该环境的影响。 3. 标题和章节:使用\section、\subsection等命令可

继前两篇入门篇文章LaTeX专栏001|入门篇-谈安装与排版心得和LaTeX 专栏002|入门篇-两种编辑器的配置的推送之后,有大多数同学都开始用上了这款排版软件,这里我不说假话,通过我从2017年开始用起它来排版数学笔记之后,让同学接触与认识到LaTeX的同学有近四五位数,从中我也帮助过无数的同学正确安装并使用它,我很高兴你们能通过它来排版一篇属于自己的数学notes,或是投稿论文等,当然八一希望有更多的同学们都可以用上它挥洒自如!

今天的内容可能有点多,重点讲解LaTeX排版入门的基础知识,主要包括行间距与段间距、数学公式、表格、插图、参考文献、页眉页脚、列表、代码块等,这里分两期讲解,接下来开始我们今天的正文:

行间距与段间距

LaTeX 默认行间距为行高的20%,你要调整行间距是可使用setspace宏包,它具有的选项onehalfspacing可将行间距调整为1.5倍行高。宏包parskip可用于取消段落的缩进,此宏包中还包括段落间的距离调整功能,这里LaTeX  支持的长度单位有:

in - 英寸(inch)
mm - 毫米(millimeters)
cm - 厘米(centimeters)
pt - points (大约 $1/72$ inch)
em - 接近当前字体的字符 'M'的宽度
ex - 大约为小写字母'x' 的高度

长度是由十进制数和长度单位表示,并注意到长度是可以为负值,比如 -1.1em. 注意到数字 0 它本身不是一个长度,你必须表明是0in0pt 等,另外我这里告诉你大概数据,1 in = 2.54cm = 72ptem 和 ex 与当前字体尺寸有关

常用长度数据命令 :

	extwidth, 	extheight
parindent, parskip
hoffset, voffset
aselineskip

长度有时也可以是负值如setlength{hoffset}{-1mm}关于段落间距有关变量:

  • aselineskip:行基线间距
  • lineskip:行间距
  • aselinestretch:伸展因子
  • parskip:部分段间距
renewcommand{aselinestretch}{1.2}
linespread{1.2}
  • linespread:行间距伸展命令
  • lineskiplimit:当两行字之间的距离小于lineskiplimit时,行距自动设为lineskip
关于对baseline(基线)的理解,可自行搜索维基百科

这里一般我推荐的搜索引擎为 Google,是其中段间距等于lineskip + parskip,而LaTeX中真正的间距,其实也就是两个基线之间的距离等于lineskip = aselineskip 乘 aselinestretch,假设我们什么都不管,对于不同的文档类,默认字体大小不同,但默认的aselineskip的值为默认字号的1.2倍,aselinestretch在不同的文档类中也不同,article文档类中为1,ctexart文档类为1.3倍

我再具体解释下,意思就是你在article文档类中如果不指定伸展因子aselinestretch,则行距就是每种字号对应的基本距离;而在ctexart中,由于是中文文档类,伸展因子aselinestretch默认为1.3倍 ,行距为文中字号对应基本距离的1.3倍。

% 改变方式
fontsize{字号}{基本距离}selectfont

在不同的段之间,也可以设置段间距(默认为0)。通过setlength{parskip}{parSkip}来实现。比如说,你想设置段间距为2em,

setlength{parskip}{2em}

在不同两段之间的距离,为parskip+aselineskip的距离。

这里值得注意的是,由于\是断行不是分段,所以由\引起的下一行与本行之间的距离,只有aselineskip, 而不加上parskip

一般在中文文章中,将parskip 设置为 0pt,即行间距和段间距相等。设置伸展因子调整行距比较不靠谱,经常调不对,可直接通过fontsize 直接调aselineskip,使得 aselinestretch 一直是1.

通过设置伸展因子调整行距不靠谱的原因是默认的aselineskip 大于fontsize大小

因此如果你伸展因子设置为 1.5,则实际得出的行距要大于 1.5 倍行距,示例如下:

renewcommand{aselinestretch}{xx}:设置伸展因子。
renewcommand{aselinestretch}{1.5} normalsize:不改变字体大小,只改变行距。

通过在源文件中输入showtheaselineskip,可以在编译时得到当前的aselineskip的值,并显示aselineskip 的值

另外我再补充几种分隔方式:

\offset: 换行,并且与下一行的行间距为原来行间距+offsetLaTeX 会自动换行,若需强制换行,可使用 \或 newline
newline:与\相同。
linebreak: 强制换行,与newline的区别为linebreak的当前行分散对齐。
par: 分段,两个连续回车 (即一个空行) 或`par

ewpage分页命令,clearpage ewpage 类似,均为强制分页,

如果想要首行缩进两个汉字距离,则setlength{parindent}{2em}.

数学公式

LaTeX 境下,最重要的数学宏包是AMS系列的:

  • 提供环境的包

    • amsmath:最基本的数学公式包
    • amscd:绘制交换图
    • amsthm:制作引理
  • 提供字体的包:

    • amsfont:定义了mathfrak和mathbb等数学字体
    • amssymb:数学符号的包

需要掌握下面最基本的几个环境

  • equation,equation* 单行单公式
  • multline multline* 多行公式,没有对齐操作,只给一个公式编号
  • gather gather* 多个公式,可添加多个公式编号
  • align align* 多个公式对齐,但只能对齐公式内部的一个部分
  • flalign flalign* 多个公式对齐,可对公式内的多个部分
  • split 分割公式

gathered 和gather的区别是放在了一个minipage里,aligned 也是minipage的问题

行内间、数学字体、符号与函数

  • 常用数学宏包:usepackage{amsmath,amssymb,amsfonts}
  • 在数学模式中输入普通文本:mbox{文本} 或 ext{文本} (用来加载amsmath 宏包)
  • 在数学模式中插入 空格:quad, qquad, hspace,使用, 等价 3/18 quad
  • 数学公式书写:行内$ ··· $,行间:[ ··· ],这里需要说明行间分单行与多行之分,一般美赛论文中是需要带编号,LaTeX可实现自动编号,单行可利用egin{equation} ··· end{equation}环境,多行编号可 egin{align} ··· end{align}实现,如果不要编号,在环境名加*即可实现,若其中某行公式无需编号, 在后面加 otag 或 onumber
  • 常用数学字体命令:mathrm, mathit, mathtt, mathsf, mathbf, mathcal,mathbb
  • 数学公式中的函数名最好用正体, 一般通过函数名命令输入,LaTeX中的函数命令都是斜杆开始自定义新的函数名 (需 amsmath宏包),DeclareMathOperator{函数名命令}{函数名}:注意像这样的命令只能放置在导言区。
  • 如果是临时使用未定义的函数名, 也可以直接在公式中使用命令:可利用这样的命令operatorname{函数名}

角标、分式、求和、积分、定界符与矩阵

  • 角标:上标ˆ{···}, 下标_{···},若实现导数 → 可以直接使用右单引号'prime
  • 分式:frac → 普通分式, frac → extstyle, dfrac → displaystyle。注意到frac 在行内公式中等价于 frac, 在行间公式中等价于 dfrac;二项式系数: inom, binom, dbinom;根式:sqrt{···}或sqrt[n]{···}
  • 求和与积分:求和sum ,积分int,针对于行内行间公式取不同的尺寸, 上下限位置也可能不同,这里举个例子,行间公式$$ sum_{i=1}^{n} xˆi $$或[]可以等价于行内公式的$ displaystylesum_{i=1}^{n} xˆi $或()
  • 上、下划线:overline{...},underline{...}
  • 上、下大括号:overbrace{...},underbrace{...}
  • 堆积:stackrel{上位符号}{基位符号},大家可能不懂,例下这样等号上有条件def

    这里可以考虑使用extarrows宏包,使用xlongequal{条件}来上下添加文字的长等号

  • 定界符:LaTeX中常用的定界符( ) [ ] | / { } ∥ ⌊ ⌋ ⌈ ⌉ ⟨ ⟩ ↑ ↓ ↕ ⇑ ⇓ ⇕;定界符可以放大: ig (1.5 倍), Big (2 倍), igg (2.5 倍), Bigg (3 倍)
  • 定界符的自适应放大:left, ight,比如left(, ight)产生小括号,中括号为left[... ight],大括号为left{... ight},尖括号为left<... ight>, 绝对值为left|... ight|, 范数为left|... ight|

    此外当我们需要出现单边括号时如,源码为left.frac{x^5}{e^x} ight|_{x=1},我们只将不需要的那半边括号用left.代替好了.

  • 矩阵:通用的写法是egin{matrix}a & b & c\d & e & fend{matrix}

    注意这里的matrix 环境要放在一个行间环境中。以上命令将生成通常当我们使用矩阵时,都需要指定一个定界符。固然,我们可以用matrix环境外加两侧的自动定界符 left, ight等实现,但这过于繁琐。

简要的方法是使用一些预定义、自带定界符的环境,包括:

  • 带圆括号 的 pmatrix 环境;
  • 带方括号 的 bmatrix 环境;
  • 带花括号 的Bmatrix 环境;
  • 带绝对值界的 vmatrix 环境与带范数界的 Vmatrix .

只需要将上面的matrix 替换即可,此外若要在行间改为小矩阵,可使用 smallmatrix环境.

关于数学公式更多详情可查看由去年我翻译的一份简短的 LaTeX 数学指南[1],以及源码可见Short Math Guide for LaTeX 中译本[2]

好了,就介绍到这里,我们下期见,主要把入门篇剩余表格、插图、参考文献、页眉页脚、列表、代码块讲解下.有关具体的详细内容你可以看看lshort-zh-cn v6.01[3]

参考资料

[1]

一份简短的 LaTeX 数学指南: https://www.latexstudio.net/archives/51735.html

[2]

Short Math Guide for LaTeX 中译本: https://github.com/hoganbin/short-math-guide

[3]

lshort-zh-cn v6.01: https://github.com/CTeX-org/lshort-zh-cn/releases

文章为用户上传,仅供非商业浏览。发布者:Lomu,转转请注明出处: https://www.daogebangong.com/articles/detail/LaTeX%20Column%20003Getting%20Started%20%20Basics%20of%20Typesetting.html

(810)
打赏 支付宝扫一扫 支付宝扫一扫
single-end

相关推荐