一文了解LaTeX常见用法

latex环境配置

latex环境需要先下载一个texlive(类似于java的jdk,是一个编译器),然后同时还需要下载一个编辑器,常用的是texstudio或者vscode

基础知识

文件基本结构

文档分为一个导言区和正文区

导言区就是引入一系列的包,然后声明一些东西

正文区就是正式书写文档内容

一个latex文档只能有一个document环境

显示中文需要使用ctex宏包

% 导言区
\documentclass[UTF8]{article} % book, report, letter
\usepackage{ctex}
\title{My First Document}
\author{Huo Jia}
\date{\today}


% 文档区
\begin{document}
\maketitle
hello world
你好世界
\end{document}

image-20220923235412720

LATEX的篇章结构

通过\section{}, \subsection{}, \subsubsection{}命令可以自动生成标题

\documentclass{article}
\usepackage{ctex}

\begin{document}
\section{引言}
\section{实验方法}
\section{实验结果}
\subsection{数据}
\subsection{图表}
\subsubsection{实验条件}
\subsubsection{实验过程}
\subsection{结果分析}
\section{结论}
\section{致谢}
\end{document}

image-20220924131507417

当文档格式为book的时候,可以使用\tableofcontents生成文档目录,使用\chapter生成文档章节标题

\documentclass{book}
\usepackage{ctex}

\begin{document}
\tableofcontents

\chapter{第一章 绪论}
\section{引言}
但在逐步成长并走向职业网坛的过程中,卡特一直都会注重对于费德勒性格和礼仪的培养,两人的关系除了师徒之外,甚至也有朋友的情分,以至于在费德勒进入成年网坛之后,即便卡特不再担任他的教练,费德勒还是会时常寻求这位恩师的帮助。

但在逐步成长并走向职业网坛的过程中,卡特一直都会注重对于费德勒性格和礼仪的培养,\par 两人的关系除了师徒之外,甚至也有朋友的情分,以至于在费德勒进入成年网坛之后,即便卡特不再担任他的教练,费德勒还是会时常寻求这位恩师的帮助。
\section{实验方法}

\chapter{第二章 实验}
\section{实验结果}
\subsection{数据}
\subsection{图表}
\subsubsection{实验条件}
\subsubsection{实验过程}
\subsection{结果分析}
\section{结论}
\section{致谢}
\end{document}

image-20220924132605716

image-20220924132617607

另外,如果对默认的格式不满意的话可以查阅ctex文档的第七节,章节标题格式设置,使用\ctexset命令做一些自定义的设置

特殊字符处理

空白字符

  • Latex中是通过空行分段的,多个空行等同于1个
  • Latex自动缩进,绝对不能使用空格代替
  • 英文中多个空格会处理为一个空格,中文空格会被忽略
  • 汉字与其他字符的间距会自动由XeLaTex处理
  • 禁止使用中文全角空格

个人常用的就是\ \quad,还有后面的两个,占位宽度和弹性宽度

% 1em(当前字体中M的宽度)
a\quad b

% 2em
a\qquad b

% 约为1/6个em
a\, b

% 0.5个em
a\enspace b

% 空格
a\ b

% 硬空格
a~b

% 占位宽度
a\hphantom{xyz}b

% 弹性宽度,直接占满一行
a\hfill b

image-20220924134816694

控制字符

\# \$ \% \{ \} \~{} \_{} \^{} \textbackslash \&

image-20220924135137361

排版符号

\S \P \dag \ddag \copyright \pounds

image-20220924135224140

标志符号

\TeX \quad  \LaTeX \quad  \LaTeXe

image-20220924204621550

引号

` % 左单引号,1左侧的那个
' % 右单引号,就是英文单引号
`` % 左双引号 
'' % 右双引号

image-20220924204905189

连字符

-   % 短
--  % 中
--- % 长

image-20220924205050406

Latex的插图

插图使用的包是graphicx,可以使用texdoc graphicx命令查看帮助文档

在使用的时候首先需要指定文档存放的路径,然后在文档中使用\includegraphics{文件名}来引入文件

在使用的时候添加的参数可以有一个,也可以有多个(通过逗号分隔),更多细节可以参照文档

% 导言区
\documentclass{article}
\usepackage{ctex}

% 语法: \includegraphics[<选项>]{<文件名>}$
% 格式: EPS, PDF, PNG, JPEG, BMP
\usepackage{graphicx}

% 指定文件存放路径
\graphicspath{{figures/}, {pics/}} % 图片在当前目录下面的 figures 目录或者 pics 文件夹中


% 正文区
\begin{document}
    \includegraphics{bili}
    \includegraphics[scale=0.5]{bili}
    \includegraphics[height=2cm]{bili}
    \includegraphics[width=2cm]{bili}
    \includegraphics[angle=45, width=2cm]{bili}
\end{document}

image-20220924210524317

Latex的表格

  • 使用的环境是tabular
  • 需要指定列的对其模式
    • l: 左
    • c: 中
    • r: 右
    • 使用P{宽度},表示本列的宽度固定,在内容超过宽度时自动换行
  • \hline可以添加横线
  • 在设置对其模式的时候添加|可以在表格中添加竖线
  • 如果需要双竖线或者双横线可以直接添加多个
  • 使用&分隔单元格,使用\\换行

还有一些更好用的表格包,比如booktab(三线表), longtab(跨页长表格), tabu(综合表格),可以使用doctex查看对应文档

\documentclass{article}
\usepackage{ctex}

\begin{document}
% 有个插件叫做excel2latex,有兴趣的可以看看
    \begin{tabular}{l | c c | r| p{1.5cm}}
        \hline
        姓名 & 语文 & 数学 & 备注& 评分 \\
        \hline
        小张 & 87 & 82 & 无 & 优秀\\
        王明 & 98 & 83 & & 优秀\\
    \end{tabular}    
\end{document}

image-20220924211140886

浮动体环境

浮动体是为了使得表格和图片脱离源文件,更好的进行排版(避免无法分割的内容产生页面留白)和交叉引用

使用这样进行交叉引用之后,可以更灵活的进行图片编号的控制,不用因为插入一张新图而全部修改编号

\documentclass{article}
\usepackage{ctex}
\usepackage{graphicx}

% 指定文件存放路径
\graphicspath{{figures/}, {pics/}} % 图片在当前目录下面的 figures 目录或者 pics 文件夹中
\begin{document}

    下面是xx班的成绩单,参见表\ref{table-score}
    \begin{table}[h] 
        \centering
        \caption{xx班成绩单}\label{table-score}
        \begin{tabular}{l | c c | r| p{1.5cm}}
            \hline
            姓名 & 语文 & 数学 & 备注& 评分 \\
            \hline
            小张 & 87 & 82 & 无 & 优秀\\
            王明 & 98 & 83 & & 优秀\\
        \end{tabular}    
    \end{table}

    这张图片是b站某视频的配图,参看图\ref{pic-b}
    \begin{figure}[htbp]
        \centering
        \includegraphics{bili}
        \caption{B站某视频图片}\label{pic-b}
    \end{figure}
\end{document}

image-20220924212800949

数学公式

数学公式主要包含行内公式和行间公式

行内公式

\section{行内公式}
\subsection{美元符号}
数学交换律: $a+b=b+a$

\subsection{小括号}
数学交换律: \(a+b=b+a\)

\subsection{math环境}
数学交换律:
\begin{math}
a+b=b+a
\end{math}

image-20220924214630879

行间公式

\section{行间公式}

\subsection{美元符号}
数学交换律:
$$
a+b=b+a
$$

\subsection{中括号}
\[
a+b=b+a  
\]

\subsection{displaymath}
\begin{displaymath}
a+b=b+a
\end{displaymath}

image-20220924214701431

上下标

\section{上下标}
\subsection{上标}
$3x^2 + x^{12} = 0$ % 使用大括号分组

\subsection{下标}
$a_0, a_1, a_{10}$

image-20220924214721623

公式的交叉引用及自动编号

\subsection{自动编号公式equation环境}
交换律见式\ref{eq:jiaohuan}
\begin{equation}
a+b=b+a\label{eq:jiaohuan}
\end{equation}

image-20220924214904628

矩阵

\documentclass{article}

\usepackage{ctex}
\usepackage{amsmath}

\begin{document}
    \[
        \begin{matrix}
            0 & 1 \\
            1 & 0
        \end{matrix}  \qquad
        \begin{pmatrix}
            0 & 1 \\
            1 & 0
        \end{pmatrix}  \qquad
        \begin{bmatrix}
            0 & 1 \\
            1 & 0
        \end{bmatrix}  \qquad
        \begin{Bmatrix}
            0 & 1 \\
            1 & 0
        \end{Bmatrix}  \qquad
        \begin{vmatrix}
            0 & 1 \\
            1 & 0
        \end{vmatrix}  \qquad
        \begin{Vmatrix}
            0 & 1 \\
            1 & 0
        \end{Vmatrix}  \qquad
    \] 
    \[
        \begin{pmatrix}
            a_{11} & a_{12} & a_{13} \\
            0 & a_{22} & a_{23} \\
            0 & 0 & a_{33} \\
        \end{pmatrix}  \qquad  
        \begin{bmatrix}
            a_{11} & \cdots & a_{1n} \\
             & \ddots & \vdots \\
            0 & 0 & a_{nn} \\
        \end{bmatrix}  \qquad  
    \]
\end{document}

image-20220924220414146

其他

数学符号合集:latex数学符号大全

latex常用数学公式语法:latex常用的数学公式编辑语法

\section{希腊字母}
$\alpha$ $\beta$ $\gamma$ $\lambda$ $\pi$

\section{数学函数}
% 虽然直接使用sin也可以显示对应的函数,但是为了规范还是使用\sin
$\log \quad \sin \quad \cos \quad \ln$

$y= \sin(2)$

$\sqrt{3}\quad\sqrt[3]{4}$

\section{分式}
$\frac{1}{3}$

$\frac{x+1}{\sqrt{2}}$

image-20220924214806576

image-20220924214810900

设置字体

字体属性:在LATEX中,一个字体有五种属性

  • 字体编码
    • 正文字体编码:OT1、T1、EU1等
    • 数学字体编码:OML、OMS、OMX等
  • 字体族
    • 罗马字体:笔画起始处有装饰
    • 无衬线字体:笔画起始处无装饰
    • 打字机字体:每个字符宽度相同,又称为等宽字体
  • 字体系列
    • 粗细
    • 宽度
  • 字体形状
    • 直立
    • 斜体
    • 伪斜体
    • 小型大写
  • 字体大小

设置字体族

这种写法只对括号范围内的字体生效

% 导言区
\documentclass{article}
\usepackage{ctex}

% 正文区
\begin{document}
\textrm{this is content}

\textsf{this is content}

\texttt{this is content}
\end{document}

image-20220924122020694

设置全文字体格式,这种写法对后续的所有字体都是生效的,直到遇到下一个声明

如果要限制字体作用的范围,则可以使用大括号将需要影响的区域括起来,比如{\sffamily this is content}

% 导言区
\documentclass{article}
\usepackage{ctex}

% 正文区
\begin{document}
\rmfamily this is content

this is document content

content

\sffamily this is content

this is document content

content

\ttfamily this is content

this is document content

content

\end{document}

image-20220924122156919

中文字体

注意需要引入ctex包才可以正常使用

% 导言区
\documentclass{article}
\usepackage{ctex}

% 正文区
\begin{document}
% 中文字体
{\songti 宋体} \quad {\heiti 黑体} \quad {\fangsong 仿宋} \quad {\kaishu 楷书}
\end{document}

image-20220924123247870

设置字体形状

包括四种:

  • 直立
  • 斜体
  • 伪斜体
  • 小型大写
% 导言区
\documentclass{article}
\usepackage{ctex}

% 正文区
\begin{document}
% 字体形状(直立、斜体、伪斜体、小型大写)
\textup{Upright Shape}
\textit{Italic Shape}
\textsl{Slanted Shape}
\textsc{Small Caps Shape}
\end{document}

image-20220924122754348

类似字体族,也可以通过下面这些命令来使得作用于后面所有字体

% 导言区
\documentclass{article}
\usepackage{ctex}

% 正文区
\begin{document}
\upshape Upright Shape
\itshape Italic Shape
\slshape Slanted Shape
\scshape Small Caps Shape
\end{document}

image-20220924123008317

设置字体大小

这些都是相对于文档基础字体的大小来设置的,基础字体的大小是10pt,可以通过第2行位置处进行修改默认字体大小

% 导言区
\documentclass[12pt]{article}
\usepackage{ctex}

% 正文区
\begin{document}
% 字体大小
{\tiny Hello}\\
{\scriptsize Hello}\\
{\footnotesize Hello}\\
{\small Hello}\\
{\normalsize Hello}\\
{\large Hello}\\
{\Large Hello}\\
{\LARGE Hello}\\
{\huge Hello}\\
{\Huge Hello}\\
\end{document}

image-20220924123920472

设置中文字号

在ctex中提供了一个\zihao命令可以用来设置中文字体大小,可以参考ctex的文档5.1节内容

使用texdoc ctex打开帮助文档

image-20220924124359833

% 导言区
\documentclass[12pt]{article}
\usepackage{ctex}

% 正文区
\begin{document}
% 中文字号设置命令
\zihao{-0} 你好!% -0表示小初
\zihao{5} 你好!% 5表示五号

\end{document}

小技巧

换行和新段落

需要换行并产生新段落的话在原文件中输入一个空行即可,新的段落会自动空两格

% 导言区
\documentclass[UTF8]{article} % book, report, letter
\usepackage{ctex}

% 文档区
\begin{document}
但在逐步成长并走向职业网坛的过程中,卡特一直都会注重对于费德勒性格和礼仪的培养,两人的关系除了师徒之外,甚至也有朋友的情分,以至于在费德勒进入成年网坛之后,即便卡特不再担任他的教练,费德勒还是会时常寻求这位恩师的帮助。

但在逐步成长并走向职业网坛的过程中,卡特一直都会注重对于费德勒性格和礼仪的培养,两人的关系除了师徒之外,甚至也有朋友的情分,以至于在费德勒进入成年网坛之后,即便卡特不再担任他的教练,费德勒还是会时常寻求这位恩师的帮助。
\end{document}

image-20220924131550883

如果只是想换行的话可以使用\\双斜线换行,这时不会重起一个新的段落

\documentclass{article}
\usepackage{ctex}

\begin{document}
但在逐步成长并走向职业网坛的过程中,卡特一直都会注重对于费德勒性格和礼仪的培养,两人的关系除了师徒之外,甚至也有朋友的情分,以至于在费德勒进入成年网坛之后,即便卡特不再担任他的教练,费德勒还是会时常寻求这位恩师的帮助。

但在逐步成长并走向职业网坛的过程中,卡特一直都会注重对于费德勒性格和礼仪的培养,\\两人的关系除了师徒之外,甚至也有朋友的情分,以至于在费德勒进入成年网坛之后,即便卡特不再担任他的教练,费德勒还是会时常寻求这位恩师的帮助。
\end{document}

image-20220924131712065

如果想新起新段落的话可以使用\par命令即可

\documentclass{article}
\usepackage{ctex}

\begin{document}
但在逐步成长并走向职业网坛的过程中,卡特一直都会注重对于费德勒性格和礼仪的培养,两人的关系除了师徒之外,甚至也有朋友的情分,以至于在费德勒进入成年网坛之后,即便卡特不再担任他的教练,费德勒还是会时常寻求这位恩师的帮助。

但在逐步成长并走向职业网坛的过程中,卡特一直都会注重对于费德勒性格和礼仪的培养,\par 两人的关系除了师徒之外,甚至也有朋友的情分,以至于在费德勒进入成年网坛之后,即便卡特不再担任他的教练,费德勒还是会时常寻求这位恩师的帮助。
\end{document}

image-20220924131837718

添加标题

使用\maketitle添加标题(需要提前将\title{},\author{},\date{\today}设置好)

% 导言区
\documentclass[UTF8]{article} % book, report, letter
\usepackage{ctex}

\newcommand{\degree}{^\circ}

\title{My First Document}
\author{Huo Jia}
\date{\today}


% 文档区
\begin{document}
\maketitle
hello world
\end{document}

image-20220924103559470

添加公式

行内公式可以使用单$将公式包围起来,块式公式使用双$将内容包裹起来

% 导言区
\documentclass[UTF8]{article} % book, report, letter
\usepackage{ctex}

% 文档区
\begin{document}
\maketitle
hello world

你好世界 $1 + 1 = 2 - 1$

$$
A^2 + B^2 = C^2
$$
\end{document}

image-20220924103708581

产生带编号的行间公式

使用equation环境包裹起来即可

通过\newcommand可以自己定义一些命令,将常用的复杂命令进行包装,如\newcommand{\degree}{^\circ},类似c语言的typedef

% 导言区
\documentclass[UTF8]{article} % book, report, letter
\usepackage{ctex}

\newcommand{\degree}{^\circ}

% 文档区
\begin{document}

\begin{equation}
    A^2 + B^2 = C^2 \Rightarrow \angle C=90 \degree
\end{equation}

\end{document}

image-20220924103409080

修改字体类型

如果要修改部分内容的字体,可以通过{\heiti 这里是内容},指定字体类型

% 导言区
\documentclass[UTF8]{article} % book, report, letter
\usepackage{ctex}

\title{\heiti 这里是文档标题}
\author{\songti 清儒}
\date{\today}

% 文档区
\begin{document}
\maketitle
hello world

你好世界
\end{document}

image-20220924103926654

查看帮助文档

在cmd命令行使用texdoc 包名可以查看对应的配置文档信息,例如

texdoc ctex % 查看中文包文档

image-20220924104424428

texdoc lshort-zh % 一份不太简短的LATEX介绍,其中可以学习latex相关的操作

image-20220924104433727

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hydrion-Qlz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值