地表最强排版公式编辑器---Latex教程笔记

LaTex教程

安装TexLive

LaTex安装教程(TeXLive2020)


观看视频学习安装更新具体操作

几个常用命令

  1. 文档中无中文,编译用pdflatex ‘文件名’.tex ;
  2. **文档中有中文,则保存tex文件选用utf-8编码,代码中高亮部分必须添加下面这句 **
    \usepackage{ctex}用于引入宏包,最后编译用xelatex ‘文件名’.tex
    文档代码如下
\documentclass{article}

\usepackage{ctex}
\begin{document}
    Hello \LaTeX{} 中文.
\end{document}
  1. 查询帮助文档,使用cmd命令
  • texdoc ctex 查看ctex中文排版宏集的使用说明书
  • texdoc lshort-zh-cn 查看一份不太简短的LaTex2e文档
  • texdoc symbols-a4 查看各类数学符号表
  • texdoc beamer 查看beamer演示文稿制作使用说明书

安装集成开发环境TexStudio

不安装,其实使用TexLive自带编辑器加上面视频的命令行方式也足以胜任Latex的开发

具体安装方法,同上面的视频

安装成功后结果如下

在这里插入图片描述

LaTex源文件的基本结构

教学原视频

【1天玩转LaTeX】【写论文不怕格式出错啦!!!】【耿楠教授授权发布】

基本结构

最基础文档格式

%导言区 进行全局设置 %为注释符号
\documentclass{article}%引入一个类,也有book,report,letter类

%正文区(文稿区)
\begin{document}%用begin和end设置一个环境,一个LaTex文件有且只能有一个环境
	内容...
\end{document}

比较完整的结构

%导言区 进行全局设置 %为注释符号
\documentclass{article}%引入一个类,也有book,report,letter类
%letter类没有\maketitle命令,article类没有封面,book和report类分正文和封面
\title{My First Document}%title命令来设置文章标题
\author{ZHAO}%author命令来设置文章作者
\date{\today}%date命令来设置编辑文章的时间,\today表示今天

%正文区(文稿区)
\begin{document}%用begin和end设置一个环境,一个LaTex文件有且只能有一个环境
	\maketitle %输出标题,作者,时间信息
	
	Hello World!
	            
	HI%可以通过空行来表示换行,注意上面的空行不能有任何东西哦,注释也不行,Latex多个空行也看成单个空行
	%正文部分也可以包含数学公式,分两种格式,在下面的目录会有
\end{document}

运行结果

在这里插入图片描述

LaTex中的中文处理方法

教学原视频

【1天玩转LaTeX】【写论文不怕格式出错啦!!!】【耿楠教授授权发布】

主要采取xelatex+ctex来处理中文

  1. 编码一定要选utf-8
  2. 要用usepackage导入ctex宏包
  3. 选用xelatex编译器或者更智能的latexmk(需要设置其默认编译器为xelatex)
    代码如下
%导言区 进行全局设置 %为注释符号
\documentclass{article}
\usepackage{ctex} %引入宏包 
\title{My First Document}%title命令来设置文章标题
\author{ZHAO}%author命令来设置文章作者
\date{\today}%date命令来设置编辑文章的时间,\today表示今天

%正文区(文稿区)
\begin{document}%用begin和end设置一个环境,一个LaTex文件有且只能有一个环境
	\maketitle 
	Hello World!你好呀
	            
	HI
\end{document}

运行结果

在这里插入图片描述

直接使用ctex文档类,参考ctex帮助文档

%导言区 进行全局设置 %为注释符号
\documentclass{ctexart}%引入一个类,也有ctexbook,ctexrep,ctexbeamer类,没有letter类

%\usepackage{ctex}
\title{\songti 宋体标题}%title命令来设置文章标题,也可以设置字体
\author{\heiti 黑体作者}%author命令来设置文章作者
\date{\today}%date命令来设置编辑文章的时间,\today表示今天

%正文区(文稿区)
\begin{document}%用begin和end设置一个环境,一个LaTex文件有且只能有一个环境
	\maketitle %输出标题,作者,时间信息
	
	Hello World!你好呀
	            
	HI
\end{document}

执行结果

在这里插入图片描述

LaTex的字体字号设置

字体属性

包含5种属性

字体编码

内容
  • 正文字体编码:OT1、T1、EU1等
  • 数学字体编码:OML、OMS、OMX等
代码

字体族

内容
  • 罗马字体:笔画起始处有装饰
  • 无衬线字体:笔画起始处无装饰
  • 打印机字体:每个字符宽度相同,又称等宽字体
代码
\documentclass{ctexart}

\begin{document}
	%字体族设置(罗马字体,无衬线字体、打字机字体)
	\textrm{Roman Family}   \textsf{Sans Serif Family} \texttt{Typewriter Family}
	
	\rmfamily Roman Family%声明后续字体均为罗马字体 
    {\sffamily Sans Serif Family} {\ttfamily Typewriter Family}%这种字体声明的方式可以用大括号来限制其作用范围
    
    aaaaaaa%仍为罗马字体
    
    \ttfamily what are you doing ?%若无括号,当遇到下一个字体声明命令时,上一个命令终止,往下的字体为新字体	
\end{document}
运行结果

在这里插入图片描述

中文字体族

代码

代码逻辑类似字体设置的,因此下面只列出一些常见命令

\songti    宋体
\quad%空格
\heiti  黑体
\fangsong  仿宋
\kaishu  楷书
\textbf    中文字体的粗体(用黑体表示)
\textit    中文字体的斜体(用楷书表示)

字体系列

内容
  • 粗细
  • 宽度
代码

代码逻辑类似字体设置的,因此下面只列出一些常见命令

\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 默认字体

字体大小

英文字体大小代码

在这里插入图片描述

这些指令使字体字号发生改变,但是改变后的字号是随标准文档类中的字号大小改变而改变的。

通过下列命令改变标准文档类的字体大小

\documentclass [10pt]{article}

在这里插入图片描述

中文字体大小代码

具体参考ctex帮助文件

\zhihao {-0}  文字 %-0号是小初号 5是5号

LaTex文档的篇章结构

篇章结构由\tableofcontents自动生成目录,\chapter{章节名称} \section{小节名称} \subsection{子小节名称} \subsubsection{子小节的下一级小节}%在ctexbook格式中不起作用等命令组成,中文文章具体细节参考ctex帮助文件,利用ctexset命令对已有排版格式进行修改,英文参考lshort-zh帮助文档 其中空行和\par命令(需要和之后的文字间有空格间隔)都能实现分段操作(带首行缩进)

\\实现换行操作(不带缩进)

LaTex中的特殊字符

空白符号

  1. 使用空行分段,多个空行等同于1个空行
  2. 首行自动缩进,绝对不能使用空格代替
  3. 英文中多个空格视为1个空格,中文字符间的空格被忽略
  4. 汉字与其他字符的间距会自动由XeLaTex处理
  5. 禁止使用中文全角空格

空格命令

  1. \quad产生1em的空格(相当于当前字体中大写M的宽度)
  2. \qquad产生2em的空格
  3. \,或者\thinspace产生1/6em的空格
  4. \enspace产生0.5em的空格
  5. \ (空格命令) 产生1个空格
  6. ~产生硬空格,不能分割的空格
  7. \kern 1pc 或者\kern -1em(-1是指长度为负值,此时后方字符会移动到前方字符前)产生指定宽度的空白,宽度由后面参数来指定,1pc=12pt=4.218mm
  8. \hskip 1em产生指定宽度的空白,宽度由后面参数来指定
  9. \hspace{35pt}产生指定宽度的空白,宽度由后面参数的占位符宽度指定
  10. \hphantom{xym}产生指定宽度的空白,宽度由后面参数来指定
  11. \hfill产生弹性宽度

\LaTex控制符

\# \$ \% \{ \} \~{} \_{} \^{} \textbackslash%产生反斜杠 \&
上述为LaTex控制符

运行结果

在这里插入图片描述

排版符号

\S \P \dag \ddag \copyright \pounds
上述为排版符

运行结果

在这里插入图片描述

\Tex标志符号

\TeX{} \LaTeX{} \LaTeXe{}
\XeLaTex%需要用\usepackage引入xltxtra宏包方可使用
上述为标志符

运行结果

在这里插入图片描述

其他几个特殊的宏包包含的字符

在这里插入图片描述
在这里插入图片描述

引号

在LaTex左右引号是不同的符号,先说左引号: `表示左单引号``表示左双引号
右引号: 表示右单引号’'表示右双引号

运行结果

在这里插入图片描述

连字符

短连字符-中连字符- -长连字符- - -

运行结果

在这里插入图片描述

非英文字符

在这里插入图片描述

运行结果

在这里插入图片描述

重音符号(以o为例)

在这里插入图片描述

运行结果

在这里插入图片描述

LaTex中的插图

  1. 导言区引入宏包\usepackage{graphicx}
  2. 引用图片语法格式:\includegraphics[<可选参数,不同参数间用,分隔>]{<必选参数文件名(带不带后缀都行)>}其中可选参数用于指定图像的缩放比例,旋转参数等
  3. 可选参数scale=<小数>
    height=<数字带单位或者使用0.2\textheight表示版型文本高度的0.2倍>
    width=<同height,只不过命令变为\textwidth> ,angle=<数字>

    分别设置缩放比例,高度,宽度,旋转角度
  4. 支持的图像格式EPS,PDF,PNG,JPEG,BMP
  5. 指定图像文件的搜索路径\graphicspath{{figures/},{pics/}}指定图片在当前目录下的figures目录和pics目录,用大括号实现分层

也可以在cmd中输入texdoc graphicx查看帮助文档

LaTex中的表格

基本语法说明

  1. 在正文区简历tabular环境:基本结构如下列代码
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
<表项>&<表项>&......&<表项>&<表项>\\
......
\end{tabular}
  1. \\表示换行
  2. &表示不同的列
  3. 在列格式说明中用字母l表示本列左对齐
  4. 在列格式说明中用字母c表示本列居中对齐
  5. 在列格式说明中用字母r表示本列右对齐
  6. 在列格式说明中用p{<宽度>}使本列宽度固定,可以实现自动换行
  7. 在列格式中l|c|c|c|c|r中|表示添加竖线,||表示添加双竖线
  8. 在每行换行符之后\hline表示添加横线,连写两次命令表示添加双横线

特殊表格的帮助文件

  1. 可以在cmd中输入texdoc booktab查看三线表格帮助文档
  2. 可以在cmd中输入texdoc longtab查看跨页长表格帮助文档
  3. 可以在cmd中输入texdoc tabu查看综合表格帮助文档

LaTeX中的浮动体

浮动体可以实现灵活分页(避免无法分割的内容产生的页面留白);给图标加标题;实现文章中对图表的交叉引用

  1. 在正文区浮动体figure环境:基本结构如下列代码
\begin{figure}{figure}[<允许位置>]
<任意内容>
\end{tabular}
  1. 可变参数说明
参数(默认参数tbp)含义
h此处,代码所在的上下文位置
t页顶,代码所在页面或之后页面的顶部
b页底,代码所在页面或之后页面的底部
p独立一页,浮动页面
  1. 浮动体内部使用\centering命令使本浮动体内的内容居中排列
  2. 交叉引用的格式如下
\caption{}%创建标题

\label{fig-<自定义名字>}%在图像标题创建语句之后添加
\label{tab-<自定义名字>}%在列表标题创建语句之后添加


\ref{fig-<自定义名字>}%在正文中要引用图像的地方使用这句话
\ref{tab-<自定义名字>}%在正文中要引用表格的地方使用这句话

特殊浮动体的帮助文件

  1. caption bicaption宏包查看标题控制
  2. subcaption subfig floatrow宏包查看并排与子图表
  3. picinpar wrapfig宏包查看绕排

LaTex的数学公式初步

行内公式

采取美元符号

$ <放入公式> $
例:$ a+b=b+a $

采取小括号

( <放入公式> )

采取math环境

\begin{math}
 <放入公式> 
\end{math}

上下标

上标

  • 单个字符直接采用x^2这种格式
  • 多个字符或者一个公式采取 x^{20}
    这种格式

下标

  • 单个字符直接采用x_2这种格式
  • 多个字符或者一个公式采取 x_{20}
    这种格式

希腊字母

大写部分

在这里插入图片描述

小写字母

在这里插入图片描述

数学函数

命令结果
\loglog
\sinsin
\coscos
\arcsinarcsin
\arccosarccos
\lnln
\sqrt[m]{x} x m \sqrt[m]{x} mx

分式

命令结果
\frac{a}{b} a b \frac{a}{b} ba

行间公式(公式单独一行,可以实现自动编号)

使用美元符号

代码结果
$$ a+b=b+a $$ a + b = b + a a+b=b+a a+b=b+a

使用中括号

代码结果
\ [ a+b=b+a \] a + b = b + a a+b=b+a a+b=b+a

使用displaymath环境

在正文区使用

\begin{displaymath}
 <放入公式> 
\end{displaymath}

katex中使用

$$\begin{aligned}
 a+b=b+c
\end{aligned}$$

效果为
a + b = b + c \begin{aligned} a+b=b+c \end{aligned} a+b=b+c

创建自动编号公式——使用equation环境

在正文区使用

\begin{equation}
 <放入公式> 
\end{equation}
运行结果

在这里插入图片描述

创建不编号公式——使用equation*环境

在正文区使用,并且需要使用amsmath宏包

\begin{equation*}
 <放入公式> 
\end{equation*}
运行结果

在这里插入图片描述

LaTex的数学公式的矩阵

基本结构

\documentclass{article}
\usepackage{amsmath}%必须引入此包
\begin{document}
	\[
	\begin{matrix}
		0&1\\%&分隔列,\\换行
		1&0
	\end{matrix}
	\]
\end{document}

结果(写csdn katex时,基本上把latex语句前后加上$$符号就能识别,注意$符号必须前后紧贴代码)

0 1 1 0 \begin{matrix} 0 &1 \\ 1&0 \end{matrix} 0110

矩阵左右两端带小括号

\documentclass{article}
\usepackage{amsmath}%必须引入此包
\begin{document}
	\[
	\begin{pmatrix}
		0&1\\
		1&0
	\end{pmatrix}
	\]
\end{document}

结果

( 0 1 1 0 ) \begin{pmatrix} 0 &1 \\ 1&0 \end{pmatrix} (0110)

矩阵左右两端带中括号

\documentclass{article}
\usepackage{amsmath}%必须引入此包
\begin{document}
	\[
	\begin{bmatrix}
		0&1\\
		1&0
	\end{bmatrix}
	\]
\end{document}

结果

[ 0 1 1 0 ] \begin{bmatrix} 0 &1 \\ 1&0 \end{bmatrix} [0110]

矩阵左右两端带大括号

\documentclass{article}
\usepackage{amsmath}%必须引入此包
\begin{document}
	\[
	\begin{Bmatrix}
		0&1\\
		1&0
	\end{Bmatrix}
	\]
\end{document}

结果

{ 0 1 1 0 } \begin{Bmatrix} 0 &1 \\ 1&0 \end{Bmatrix} {0110}

矩阵左右两端带单竖线

\documentclass{article}
\usepackage{amsmath}%必须引入此包
\begin{document}
	\[
	\begin{vmatrix}
		0&1\\
		1&0
	\end{vmatrix}
	\]
\end{document}

结果

∣ 0 1 1 0 ∣ \begin{vmatrix} 0 &1 \\ 1&0 \end{vmatrix} 0110

矩阵左右两端带双竖线

\documentclass{article}
\usepackage{amsmath}%必须引入此包
\begin{document}
	\[
	\begin{Vmatrix}
		0&1\\
		1&0
	\end{Vmatrix}
	\]
\end{document}

结果

∥ 0 1 1 0 ∥ \begin{Vmatrix} 0 &1 \\ 1&0 \end{Vmatrix} 0110

矩阵中的省略号

命令结果
\dots … \dots
\vdots ⋮ \vdots
\ddots ⋱ \ddots

实例

\documentclass{article}
\usepackage{amsmath}%必须引入此包
\begin{document}
	\[
	A=\begin{bmatrix}
		a_{11}&\dots&a_{1n}\\
		&\ddots&\vdots\\
		0&&a_{nn}
	\end{bmatrix}_{n \times n}%用\times命令来写下标
	\]
\end{document}

结果

A = [ a 11 … a 1 n ⋱ ⋮ 0 a n n ] n × n A=\begin{bmatrix} a_{11}&\dots&a_{1n}\\ &\ddots&\vdots\\ 0&&a_{nn} \end{bmatrix}_{n \times n} A=a110a1nannn×n

分块矩阵(利用矩阵的嵌套)

\documentclass{article}
\usepackage{amsmath}
\begin{document}
  \[
  \begin{pmatrix}
  	\begin{matrix}
  		1&0\\0&1
  	\end{matrix}
  & \text{\Large 0}\\%\text{text}命令为临时从数学模式切换为文本模式
  \text{\Large 0}
  &\begin{matrix}
  1&0\\0&1
  \end{matrix}
  \end{pmatrix} 
  \]
\end{document}

结果为

( 1 0 0 1 0 0 1 0 0 1 ) \begin{pmatrix} \begin{matrix} 1&0\\0&1 \end{matrix} & \text{\Large 0}\\%\text{text}命令为临时从数学模式切换为文本模式 \text{\Large 0} &\begin{matrix} 1&0\\0&1 \end{matrix} \end{pmatrix} 1001001001

三角矩阵

\documentclass{article}
\usepackage{amsmath}
\begin{document}
	\[
	\begin{pmatrix}
		a_{11}&a_{12}&\dots&a_{1n}\\
		     &a_{22}&\dots&a_{2n}\\
		     &      &\ddots&\vdots\\
	    \multicolumn{2}{c}{\raisebox{1.3ex}[0pt]{\Huge 0}}%\multicolumn{cols}{pos}{text}表示合并多行,\raisebox表示调整大小
	                &          &a_{nn}
	\end{pmatrix} 
	\]
\end{document}

结果(KaTex不兼容)

KaTex结果
( a 11 a 12 … a 1 n a 22 … a 2 n ⋱ ⋮ a n n ) \begin{pmatrix} a_{11}&a_{12}&\dots&a_{1n}\\ &a_{22}&\dots&a_{2n}\\ & &\ddots&\vdots\\ & & &a_{nn} \end{pmatrix} a11a12a22a1na2nann
LaTex结果
在这里插入图片描述

跨列省略号

命令结果
\hdotsfor{<列数>}KaTeX parse error: Undefined control sequence: \hdotsfor at position 1: \̲h̲d̲o̲t̲s̲f̲o̲r̲{5}
\documentclass{article}
\usepackage{amsmath}
\begin{document}
	\[
	\begin{pmatrix}
	1& \frac 12 & \dots & \frac 1n\\
	\hdotsfor{4}\\
	m& \frac{m}{2}&\dots&\frac{m}{n}
	\end{pmatrix} \textsf{}
	\]
\end{document}

结果(KaTex不兼容)

在这里插入图片描述

行内小矩阵

\documentclass{article}
\usepackage{amsmath}
\begin{document}
	\begin{math}
		\left( %手动加左右括号
		\begin{smallmatrix}
		x&-y\\y&x
		\end{smallmatrix}
		\right)
	\end{math}
\end{document}

结果(Katex不兼容)

在这里插入图片描述

使用array环境排版矩阵(类似表格环境用法)

\documentclass{article}
\usepackage{amsmath}
\begin{document}
	\[
	\begin{array}{r|r}
	\frac{1}{2} &0\\
	\hline
	0& -\frac{a}{b}c\\
	\end{array}
	\]
\end{document}

结果

1 2 0 0 − a b c \begin{array}{r|r} \frac{1}{2} &0\\ \hline 0& -\frac{a}{b}c\\ \end{array} 2100bac

LaTex的数学公式的多行公式

带编号

\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
	%带编号
	\begin{gather}
		a+b=b+a\\
		avbbv
	\end{gather}
\end{document}

结果(KaTex不兼容)

在这里插入图片描述

不带编号

\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
	%不带编号
	\begin{gather*}
		a+b=b+a\\
		aaaa
	\end{gather*}
\end{document}

结果(KaTex不兼容)

在这里插入图片描述

阻止编号,使用\notag命令

\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
	%带编号
	\begin{gather}
		a+b=b+a\\
		avbbv\\
		avbbv11 \notag
	\end{gather}

\end{document}

结果(KaTex不兼容)

在这里插入图片描述

多行公式的排版——\align

  • 每行公式用&符号对应的位置对齐
  • 同样也分带编号与不带编号的两种情况
  • 可以含有多个&,当数目不相等的时候,会优先从前往后排,多余的&后面的元素直接与&少的式子最后一个元素对齐
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
	%带编号
	\begin{align}
		x&=t+&\cos t+1\\y&=&2\sin t
	\end{align}
	%不带编号
	\begin{align*}
		x&=t+\cos t+1\\y&=2\sin t
	\end{align*}
\end{document}

运行结果

在这里插入图片描述

同一个公式的多行排版——\split

对齐规则和align一样,编号在中间

\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
	\begin{equation}
		\begin{split}
		\cos 2x &=\cos^2x -\sin^2x \\
		&=2\cos^2x-1
		\end{split}
	\end{equation}
\end{document}

运行结果

在这里插入图片描述

分段函数的排版——cases环境

  • 每行公式中使用&分隔为两部分
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
	\begin{equation}
	D(x)=\begin{cases}
		 1, x \in \mathbb{Q};\\
		 0,x \in \mathbb{R}\setminus\mathbb{Q}
		\end{cases}
	\end{equation}
\end{document}

结果

D ( x ) = { 1 , x ∈ Q ; 0 , x ∈ R ∖ Q D(x)=\begin{cases} 1, x \in \mathbb{Q};\\ 0,x \in \mathbb{R}\setminus\mathbb{Q} \end{cases} D(x)={1,xQ;0,xRQ

LaTex中的参考文献BibTex

LaTex中的参考文献BibLaTex

LaTex中的自定义命令和环境

  • 4
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值