【论文写作】LaTeX学习笔记:一文入门LaTeX(超详细)

您所在的位置:网站首页 dismissas语法结构 【论文写作】LaTeX学习笔记:一文入门LaTeX(超详细)

【论文写作】LaTeX学习笔记:一文入门LaTeX(超详细)

2024-07-09 14:54| 来源: 网络整理| 查看: 265

文章目录 一、LaTeX源文件的基本结构1.1 基本结构1.2、导言区1.2.1 \documentclass1.2.2 \usepackage1.2.3 封面格式 1.3 正文区1.4 完整示例 二、LaTeX中的中文处理办法2.1 设置支持中文2.1.1 编译器设置2.1.2 引入ctex宏包2.1.3 设置文档格式 2.2 设置中文字体格式 三、LaTeX的字体字号设置3.1 字体属性介绍3.2 字体族设置3.3 字体大小设置3.4 中文字号设置3.5 英文字体格式设置3.6 自定义字体设置命令3.7 完整示例代码 四、LaTeX的篇章结构4.1 \section构建小节4.2 \subsection 构建子小节4.3 \subsubsection 构建子子小节4.4 生成目录4.5 完整代码 五、LaTeX中的特殊字符5.1 空白字符5.2 控制符5.3 排版符号5.4 标志符号5.5 引号5.6 连字符5.7 非英文字符5.8 重音字符(以o为例)5.9 完整代码 六、LaTeX中的插图6.1 基本语法6.1.1 引入宏包6.1.2 指定图片路径6.1.3 语法 6.2 完整代码 七、LaTeX中的表格7.1 基本语法7.2 代码示例 八、LaTeX中的浮动体8.1 基本语法8.2 浮动格式htbp8.3 代码示例 九、LaTeX中的数学公式9.1 行内公式9.2 上下标9.3 希腊字母9.4 数学函数9.5 分式9.6 行间公式9.7 简单矩阵9.8 多行公式 十、LaTeX中的参考文献BibTex10.1 编辑器设置10.2 创建bib文件10.3 指定参考文献样式10.4 完整代码 十一、LaTeX中的自定义命令和环境11.1 自定义命令11.2 定义环境

一、LaTeX源文件的基本结构 1.1 基本结构

LaTeX中主要分为导言区和正文区 在这里插入图片描述

1.2、导言区

导言区通常用于定义文档的格式、语言等(全局设置)。常用的LaTex命令主要有\documentclass,\usepackage等。下面分别对几个常用的命令做简单介绍。

1.2.1 \documentclass

\documentclass命令是用于设置LaTex文件所生成文档的格式. 其命令语法如下所示:

\documentclass[options]{class}

在这里插入图片描述 在这里插入图片描述 例如:

\documentclass[12pt, a4paper]{article}

意思是正文字体大小为12pt, 页面规格是A4, 使用article文档格式

1.2.2 \usepackage

\usepackage命令设置在编译LaTex文件时要导入的扩展包,例如:

\usepackage[utf8]{inputenc} \usepackage{comment} 1.2.3 封面格式 \title{My First Paper} % 文章名字 \author{WSKH} % 作者姓名 \date{\today} % 日期

设置所要生成文档的封面内容: 文档名,作者,日期等(这只是设置了封面格式,生成封面的是\maketitle命令)。它需要放在正文区

1.3 正文区

在正文区,我们可以用公式、用命令构成文本文档。一个LaTeX文件中只能有一个document。

% 正文区(文稿区) \begin{document} \maketitle % 将标题打印出来 Hello \TeX \end{document} 1.4 完整示例 % 导言区 \documentclass[12pt,a4paper]{article} \title{My First Paper} % 文章名字 \author{WSKH} % 作者姓名 \date{\today} % 日期 % 正文区(文稿区) \begin{document} \maketitle % 将标题打印出来 Hello \TeX Let $f(x)$ define: $$f(x)=x^2+x+1$$ \end{document}

在这里插入图片描述

二、LaTeX中的中文处理办法

本章只针对使用TexStudio编译器的情况

2.1 设置支持中文 2.1.1 编译器设置

首先查看设置,构建,默认编译器,是否为XeLaTeX 在这里插入图片描述 在这里插入图片描述 再检查编译器的编码格式是否为UTF-8 在这里插入图片描述 确保右下角编码格式显示为UTF-8 在这里插入图片描述

2.1.2 引入ctex宏包

在导言区,加入下面代码,引入ctex宏包

\usepackage{ctex}

下面是完整的代码

% 导言区 \documentclass[12pt,a4paper]{article} \usepackage{ctex} \title{中文标题} % 文章名字 \author{你的名字} % 作者姓名 \date{\today} % 日期 % 正文区(文稿区) \begin{document} \maketitle % 将标题打印出来 中文内容 \end{document}

效果预览 在这里插入图片描述

2.1.3 设置文档格式

要想支持中文,除了引入ctex宏包,还可以将documentclass设置为ctexart、ctexrep、ctexbook,此时就不需要再额外引入ctex宏包了

\documentclass[12pt,a4paper]{ctexart} \documentclass[12pt,a4paper]{ctexrep} \documentclass[12pt,a4paper]{ctexbook}

完整代码示例:

% 导言区 \documentclass[12pt,a4paper]{ctexart} %\usepackage{ctex} \title{\kaishu 中文标题} % 文章名字(楷书) \author{\heiti 你的名字} % 作者姓名(黑体) \date{\today} % 日期 % 正文区(文稿区) \begin{document} \maketitle % 将标题打印出来 中文内容 \end{document}

效果预览(和引入ctex宏包效果一样): 在这里插入图片描述

2.2 设置中文字体格式 \title{\kaishu 中文标题} % 文章名字(楷书) \author{\heiti 你的名字} % 作者姓名(黑体)

完整代码:

% 导言区 \documentclass[12pt,a4paper]{article} \usepackage{ctex} \title{\kaishu 中文标题} % 文章名字(楷书) \author{\heiti 你的名字} % 作者姓名(黑体) \date{\today} % 日期 % 正文区(文稿区) \begin{document} \maketitle % 将标题打印出来 中文内容 \end{document}

效果预览: 在这里插入图片描述

三、LaTeX的字体字号设置 3.1 字体属性介绍

在这里插入图片描述

3.2 字体族设置 % 字体族设置(罗马字体、打字机字体等) \textrm{罗马字体} \textsf{无衬线字体} \texttt{打字机字体} % 用大括号限定字体族生效范围 {\rmfamily 这里面的全都是罗马字体} {\ttfamily 这里面的全都是打字机字体} 3.3 字体大小设置 % 字体大小设置 {\tiny Hello} \\ {\scriptsize Hello} \\ {\footnotesize Hello} \\ {\small Hello} \\ {\normalsize Hello} \\ {\large Hello} \\ {\Large Hello} \\ {\LARGE Hello} \\ {\huge Hello} \\ {\Huge Hello} \\

在这里插入图片描述

3.4 中文字号设置 % 中文字号设置 \zihao{5} 你好 3.5 英文字体格式设置 % 英文字体格式设置 \textbf{Hello} % 加粗 \textit{Hello} % 斜体 3.6 自定义字体设置命令

当一段话需要很复杂的字体设置时(如需要设置字号、斜体、加粗),如果使用正常的写法,就会很麻烦,特别是需要多次使用该字体时,如下所示:

{\huge{\textbf{\textit{Hello}}}}

所以我们希望将复杂命令定义为新命令,方便后面的调用

在导言区,定义命令 \myfont

\newcommand{\myfont}{\huge{\textbf{\textit{Hello}}}}

然后在正文区使用

\myfont 3.7 完整示例代码 % 导言区 \documentclass[12pt,a4paper]{ctexart} \newcommand{\myfont}{\huge{\textbf{\textit{Hello}}}} % 正文区(文稿区) \begin{document} % 字体族设置(罗马字体、打字机字体等) \textrm{罗马字体} \textsf{无衬线字体} \texttt{打字机字体} % 用大括号限定字体族生效范围 {\rmfamily 这里面的全都是罗马字体} {\ttfamily 这里面的全都是打字机字体} % 字体大小设置 {\tiny Hello} \\ {\scriptsize Hello} \\ {\footnotesize Hello} \\ {\small Hello} \\ {\normalsize Hello} \\ {\large Hello} \\ {\Large Hello} \\ {\LARGE Hello} \\ {\huge Hello} \\ {\Huge Hello} \\ % 中文字号设置 \zihao{5} 你好 % 英文字体格式设置 \textbf{Hello} % 加粗 \textit{Hello} % 斜体 % 复杂字体设置 {\huge{\textbf{\textit{Hello}}}} \\ \myfont \end{document}

效果预览: 在这里插入图片描述

四、LaTeX的篇章结构 4.1 \section构建小节 \section{引言} \section{问题背景} \section{数学模型的建立与求解} \section{结论}

在这里插入图片描述

4.2 \subsection 构建子小节 \section{引言} \section{问题背景} \section{数学模型的建立与求解} \subsection{符号说明} \subsection{模拟退火算法模型建立} \subsection{模拟退火算法模型求解} \section{结论}

在这里插入图片描述

4.3 \subsubsection 构建子子小节 \section{引言} \section{问题背景} \section{数学模型的建立与求解} \subsection{符号说明} \subsection{模拟退火算法模型建立} \subsubsection{参数设置} \subsubsection{领域动作算子} \subsubsection{评价函数} \subsection{模拟退火算法模型求解} \section{结论}

在这里插入图片描述

4.4 生成目录 \tableofcontents

在这里插入图片描述

4.5 完整代码 % 导言区 \documentclass[12pt,a4paper]{ctexart} % 正文区(文稿区) \begin{document} \tableofcontents \section{引言} \section{问题背景} \section{数学模型的建立与求解} \subsection{符号说明} \subsection{模拟退火算法模型建立} \subsubsection{参数设置} \subsubsection{领域动作算子} \subsubsection{评价函数} \subsection{模拟退火算法模型求解} \section{结论} \end{document} 五、LaTeX中的特殊字符 5.1 空白字符 中文中加空格不会再编译后产生空格英文中不管加多少个空格,最后编译完最多产生一个空格空行分段,多个空行等同于1个自动缩进,绝对不能使用空格代替英文中多个空格处理为1个空格,中文中空格将被忽略汉字与其他字符的间距会自动由XeLateX处理禁止使用中文全角空格 \section{空白字符} 空白格 空白格 空白格 空白格 Hello Hello Hello Hello

在这里插入图片描述 我们还可以根据命令加入空格

\section{控制字体宽度} \subsection{控制空格} a\quad b\par %1em(当前字体中M的宽度) a\qquad b\par %2em a\,b a\thinspace b\par %约为1/6em a\enspace b\par %0.5em a\ \ \ \ b\par %4个空格 a~b\par %硬空格(不能分割的空格) \subsection{根据参数产生指定间隔} a\kern 1pc b\par a\kern -1em b\par %b距离a-1em,相当于把ab反向输出为ba a\hskip 1em b\par a\hspace{35pt}b\par \subsection{根据指定字符的宽度来产生空白} a\hphantom{1}b\par a\hphantom{12}b\par a\hphantom{123}b\par a\hphantom{1234}b\par a\hphantom{12345}b\par \subsection{弹性长度空白} a\hfill b\par %弹性空白可以让两边的字符正好到达纸张边界

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

5.2 控制符 \subsection{控制符} \# \$ \% \{\} \~{} \_{} \^{} \textbackslash \&

在这里插入图片描述

5.3 排版符号 \subsection{排版符号} \S \P \dag \ddag \copyright \pounds

在这里插入图片描述

5.4 标志符号

引入宏包

\usepackage{xltxtra} \usepackage{texnames} \usepackage{mflogo}

代码:

\subsection{LateX标志符号} \subsubsection{默认自带} \TeX{} \LaTeX{} \LaTeXe{} \subsubsection{xltxtra宏包提供} \XeLaTeX \subsubsection{texnames宏包提供} \AmSTeX{} \AmS-\LaTeX{} \BibTeX{} \LuaTeX{} \subsubsection{mflogo宏包提供} \METAFONT{} \MF{} \MP{}

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

5.5 引号 \subsection{引号} ` ' `` '' ``你好'' `好'

在这里插入图片描述

5.6 连字符 \subsection{连字符} - -- ---

在这里插入图片描述

5.7 非英文字符 \subsection{非英文字符} \oe - \OE - \ae - \AE - \aa - \AA - \o - \O - \l - \L - \ss - \SS - !` - ?`

在这里插入图片描述

5.8 重音字符(以o为例) \subsection{重音符号(以o为例)} \`o - \'o - \^o - \''o - \~o - \=o - \.o - \u{o} - \v{o} - \H{o} - \r{o} - \t{o} - \b{o} - \c{o} - \d{o}

在这里插入图片描述

5.9 完整代码 \documentclass{article} \usepackage{ctex} \usepackage{xltxtra} \usepackage{texnames} \usepackage{mflogo} \title{LateX特殊字符} \author{WSKH} \date{\today} \begin{document} \maketitle \section{空白符号} 空白格 空白格 空白格 空白格 Hello Hello Hello Hello \subsection{空行分段,多个空行等同于1个} \subsection{自动缩进,绝对不能使用空格代替} \subsection{英文中多个空格处理为1个空格,中文中空格将被忽略} \subsection{汉字与其他字符的间距会自动由XeLateX处理} \subsection{禁止使用中文全角空格} \section{控制字体宽度} \subsection{控制空格} a\quad b\par %1em(当前字体中M的宽度) a\qquad b\par %2em a\,b a\thinspace b\par %约为1/6em a\enspace b\par %0.5em a\ \ \ \ b\par %4个空格 a~b\par %硬空格(不能分割的空格) \subsection{根据参数产生指定间隔} a\kern 1pc b\par a\kern -1em b\par %b距离a-1em,相当于把ab反向输出为ba a\hskip 1em b\par a\hspace{35pt}b\par \subsection{根据指定字符的宽度来产生空白} a\hphantom{1}b\par a\hphantom{12}b\par a\hphantom{123}b\par a\hphantom{1234}b\par a\hphantom{12345}b\par \subsection{弹性长度空白} a\hfill b\par %弹性空白可以让两边的字符正好到达纸张边界 \section{LateX特殊字符} \subsection{控制符} \# \$ \% \{\} \~{} \_{} \^{} \textbackslash \& \subsection{排版符号} \S \P \dag \ddag \copyright \pounds \subsection{LateX标志符号} \subsubsection{默认自带} \TeX{} \LaTeX{} \LaTeXe{} \subsubsection{xltxtra宏包提供} \XeLaTeX \subsubsection{texnames宏包提供} \AmSTeX{} \AmS-\LaTeX{} \BibTeX{} \LuaTeX{} \subsubsection{mflogo宏包提供} \METAFONT{} \MF{} \MP{} \subsection{引号} ` ' `` '' ``你好'' `好' \subsection{连字符} - -- --- \subsection{非英文字符} \oe - \OE - \ae - \AE - \aa - \AA - \o - \O - \l - \L - \ss - \SS - !` - ?` \subsection{重音符号(以o为例)} \`o - \'o - \^o - \''o - \~o - \=o - \.o - \u{o} - \v{o} - \H{o} - \r{o} - \t{o} - \b{o} - \c{o} - \d{o} \end{document} 六、LaTeX中的插图 6.1 基本语法 6.1.1 引入宏包 \usepackage{graphicx} %插图需要引用的包 6.1.2 指定图片路径

可以指定单个路径,也可以指定多个路径

\graphicspath{{fig/}} %指定图片在当前文件夹下的fig文件夹内 \graphicspath{{fig1/},{fig2/}} % 指定多个路径 6.1.3 语法

语法:\textbackslash includegraphics[选项]{文件名} 支持格式:EPS,PDF,PNG,JPEG,BMP 可以指定缩放比例scale,也可以指定图片宽和高: 指定缩放比例:\includegraphics[scale=0.1]{xxxx.jpg} 指定图片宽高:\includegraphics[width=6cm,height=6cm]{xxxx.jpg}

6.2 完整代码 \documentclass{article} \usepackage{ctex} \usepackage{graphicx} %插图需要引用的包 \graphicspath{{fig/}} %指定图片在当前文件夹下的fig文件夹内 \title{LaTeX中的插图} \author{WSKH} \date{\today} \begin{document} \maketitle \section{LaTeX中的插图} 语法:\textbackslash includegraphics[选项]\{文件名\}\par 格式:EPS,PDF,PNG,JPEG,BMP\par 可以指定缩放比例scale,也可以指定图片宽和高\par 让我们来看看效果:\par \includegraphics[scale=0.1]{13950325_221449856000_20005454ssasasas.jpg}\par \includegraphics[width=6cm,height=6cm]{13950325_221449856000_20005454ssasasas.jpg}\par \end{document}

预览效果: 在这里插入图片描述

七、LaTeX中的表格 7.1 基本语法

在这里插入图片描述

7.2 代码示例 \documentclass{article} \usepackage{ctex} \title{LaTeX中的插图} \author{WSKH} \date{\today} %cmd窗口里输入texdoc booktab可查看帮助文档 \begin{document} \maketitle \begin{tabular}{l|c|p{1.5cm}|c|r} %l:左对齐 c:居中 r:右对齐 |:在该位置增加竖线 p{1.5cm}指定宽度 \hline %\hline为表格增加一条横线 姓名 & 语文 & 数学 & 外语 & 备注 \\ %\\结束这一行表格的书写 \hline 张三 & 98 & 96 & 97 & 优秀 \\ \hline 李四 & 85 & 87 & 83 & 良好 \\ \hline 王五 & 73 & 74 & 77 & 一般 \\ \hline 赵六 & 62 & 66 & 64 & 及格 \\ \hline \end{tabular} \end{document}

在这里插入图片描述

八、LaTeX中的浮动体 8.1 基本语法

在这里插入图片描述

8.2 浮动格式htbp

常用选项[htbp]是浮动格式: 『h』当前位置。将图形放置在正文文本中给出该图形环境的地方。如果本页所剩的页面不够,这一参数将不起作用。 『t』顶部。将图形放置在页面的顶部。 『b』底部。将图形放置在页面的底部。 『p』浮动页。将图形放置在一只允许有浮动对象的页面上。 一般使用[htb]这样的组合,只用[h]是没有用的。这样组合的意思就是latex会尽量满足排在前面的浮动格式,就是h-t-b这个顺序,让排版的效果尽量好。 !h 只是试图放在当前位置。如果页面剩下的部分放不下,还是会跑到下一页的。一般页言,用 [!h] 选项经常会出现不能正确放置的问题,所以常用 [ht]、[htbp] 等。

8.3 代码示例 \documentclass{article} \usepackage{ctex} \usepackage{graphicx} %插图需要引用的包 \graphicspath{{fig/}} %指定图片在当前文件夹下的fig文件夹内 \title{LaTeX中的浮动体} \author{WSKH} \date{\today} \begin{document} LaTeX中的图\ref{f1}: \begin{figure}[htbp] % [htbp] 浮动格式 \centering % 让图片居中显示 \includegraphics[scale=0.1]{13950325_221449856000_20005454ssasasas.jpg} \caption{图片标题} % 设置图片标题,并自动编号 \label{f1} \end{figure} LaTeX中的表\ref{t1}: \begin{table}[htbp] \centering % 让表格居中显示 \caption{表格标题} % 设置表格标题,并自动编号 \label{t1} \begin{tabular}{l|c|p{1.5cm}|c|r} %l:左对齐 c:居中 r:右对齐 |:在该位置增加竖线 p{1.5cm}指定宽度 \hline %\hline为表格增加一条横线 姓名 & 语文 & 数学 & 外语 & 备注 \\ %\\结束这一行表格的书写 \hline 张三 & 98 & 96 & 97 & 优秀 \\ \hline 李四 & 85 & 87 & 83 & 良好 \\ \hline 王五 & 73 & 74 & 77 & 一般 \\ \hline 赵六 & 62 & 66 & 64 & 及格 \\ \hline \end{tabular} \end{table} \end{document}

在这里插入图片描述

九、LaTeX中的数学公式 9.1 行内公式 \section{行内公式} \subsection{美元符号} 交换律是 $a+b=b+a$ \subsection{小括号} 交换律是 \(a+b=b+a\) \subsection{math环境} 交换律是 \begin{math}a+b=b+a\end{math}

在这里插入图片描述

9.2 上下标 \section{上下标} \subsection{上标} $x^2+y^4=z^3$ \subsection{下标} $P_i+N_j=M_k$

在这里插入图片描述

9.3 希腊字母 \section{希腊字母} $\alpha$ $\beta$ $\gamma$ $\epsilon$ $\pi$ $\omega$ $\Gamma$ $\Delta$ $\Theta$ $\Pi$ $\Omega$

在这里插入图片描述

9.4 数学函数 \section{数学函数} $\log$ $\sin$ $\cos$ $\arcsin$

在这里插入图片描述

9.5 分式 \section{分式} $\frac{1}{5}$

在这里插入图片描述

9.6 行间公式 \section{行间公式} \subsection{美元符号} $$f(x)=x^2+x+1$$ \subsection{中括号} \[f(x)=x^2+x+1\] \subsection{displaymath环境} \begin{displaymath} f(x)=x^2+x+1 \end{displaymath} \subsection{自动编号equation环境} 函数\ref{e1}: \begin{equation} f(x)=x^2+x+1 \label{e1} \end{equation}

在这里插入图片描述

9.7 简单矩阵

引入宏包

\usepackage{amsmath} \section{矩阵} $\begin{matrix} 0 & 1 \\ 1 & 0 \end{matrix}$ $\begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}$ $\begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix}$ $\begin{Bmatrix} 0 & 1 \\ 1 & 0 \end{Bmatrix}$ $\begin{vmatrix} 0 & 1 \\ 1 & 0 \end{vmatrix}$ $\begin{Vmatrix} 0 & 1 \\ 1 & 0 \end{Vmatrix}$

在这里插入图片描述

9.8 多行公式

引入宏包

\usepackage{amsmath} \usepackage{amssymb} \section{多行公式} % gather环境 \subsection{gather带编号} \begin{gather} a+b=b+a \\ f(x)=x^2+x+1 \end{gather} \subsection{gather*不带编号} \begin{gather*} a+b=b+a \\ f(x)=x^2+x+1 \end{gather*} % align环境,用&进行对齐 \subsection{align} \begin{align} a+b&=b+a \\ f(x)&=x^2+x+1 \end{align} \subsection{align*} \begin{align*} a+b&=b+a \\ f(x)&=x^2+x+1 \end{align*} % split环境,对其采用align环境对齐方式,编号在中间 \subsection{split} \begin{equation} \begin{split} a+b&=b+a \\ f(x)&=x^2+x+1 \end{split} \end{equation} % cases环境,每行公式用&分割为两个部分,通常表示为值和后面的条件 \subsection{cases} \begin{equation} f(x)=\begin{cases} 1,&x>0 \\ 0,&x=0 \\ -1,&x


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3