LaTex | LaTeX 学习心得
起因
最近要准备数模国赛了,因此学习一下LaTeX的写作排版。
配置有关环境
VScode集成了非常功能,心想着应该也有Latex插件,在一番参考网上教程后,下载了LaTex Workshop
插件。
之后在VScode中,打开一个准备好的空文件夹,创建一个my_latex.tex
文件,就可以在VScode中进行LaTex的写作了。
在写作的同时,也可以随时在VScode中预览效果。
如果你想在线编辑LaTeX,也可以使用Overleaf。
学习过程
基本语法规则
LaTex中,注释以%
开头
LaTeX语言的写法大致分为两类
-
命令
以
\
开头,后面跟命令名,如\documentclass
-
环境
以
\begin
开头,以\end
结尾,如\begin{document}
命令和环境可以嵌套
空格和换行符在LaTex中会被忽略,因此需要专门的空格和换行符。
- 空格:一般采用
\quad
或\qquad
- 换行符:
\\
分段只需要相邻两段之间空一行即可,分段会自动缩进
this is paragraph1, you can see that there is a space between paragraph1 and paragraph2. |
开始一个pdf文档的写作
\documentclass{classname} |
classname 代表文章的风格,可选参数有:
-
article
: 用于写短文章 -
report
: 用于写长文章 -
book
: 用于写书 -
letter
: 用于写信件
如果要在文中使用中文,在头部加上xeLaTeX编译(这里我也有点没搞懂)
相关包安装
在开始文档后,需要安装一些包
\usepackage{package1,package2,...} |
常用的包包括:
xeCJK
: 用于在xelatex中使用中文。amsmath
,amsfonts
,amsthm
:数学相关支持包,提供了许多数学函数和符号。bm
: 用于在公式中使用黑斜体字体。mathrsfs
: 用于在公式中使用斜体字体。graphicx
: 用于插入图片。subfigure
: 用于在同一张图中插入多个子图。geometry
: 用于设置页面布局。fancyhdr
: 用于自定义页眉和页脚。lastpage
: 用于获取总页数。listings
: 用于插入代码。hyperref
: 用于生成目录和链接。
导言区
Latex将文章分为导言区(preamble)和正文区(main matter)。
导言区可以放置一些全局的设置,如页眉页脚、字体、标题等。
设置文章格式
设置页面边距
\geometry{left=2cm,right=2cm,top=2cm,bottom=2cm} |
设置页眉和页脚
\pagestyle{fancy} |
设置底部页码(默认是1、2…数字)
\cfoot{第 \thepage 页(共 \lastpage 页)} |
\thepage 和 \lastpage 是内置的宏
设置标题格式
\title{文章标题} |
编写正文区
正文区以\begin{document}
开始,以\end{document}
结束。
如果你想显示各个设定好的标题,可以加入如下代码:
\maketitle |
如果你需要一些无意义的填充,可以加入如下代码:
\lipsum[1-5] % 参数1-5表示填充5段无意义的文本 |
以下内容均均属正文内容:
目录
如果你想显示目录,可以加入如下代码:
\tableofcontents |
目录是根据文章的各级标题自动生成的
各级标题
通过\section{}
,\subsection{}
,\subsubsection*{}
,你可以分别设置一级二级三级标题。
\section{一级标题} % 1 一级标题 |
如果不想有前缀数字,可以使用
\section*{}
,\subsection*{}
,\subsubsection*{}
字体
LaTex中,字体可以分为粗体、斜体、无衬线字体、打字机字体、小型大写字母、中等大写字母。
\textbf{粗体} % 加粗 |
数学公式
LaTex中,数学公式可以分为行内公式和行间公式。
行内公式以$
符号包裹,如$x^2$
行间公式以\[
和\]
符号包裹,如\[x^2\]
对于复杂的行间公式,可以使用amsmath
包中的equation
环境。
行内公式演示: |
插入行间公式时,如果用
equation
环境,那么公式会自动编号,如果用equation*
环境,那么公式不会自动编号。而如果用\[]\
包裹的形式,也不会自动编号
如果想对公式字母加粗,可以用\bm{需要加粗的字母}
方法,注意引入bm
包
对于复杂的LeTeX公式代码建议利用LaTex公式编辑网站中创建
插入图片
请将需要插入的图片放入你的.tex
文件所在目录中(可以是有文件夹的子目录)
插入单图
使用环境\begin{figure}
和\end{figure}
包裹图片
\begin{figure}[h] |
需要关注的参数:
h
:代表自动调整位置\center
:表示图片居中width=0.6\textwidth
:代表图片宽度为页面宽度的60%your_pic_dir
:代表你的图片相对.lex文件的相对路径(如你有一张图片pic.png在与.tex文件同目录下,则可以填pic.png)
插入双图
先使用环境\begin{figure}
和\end{figure}
包裹双图图片,再使用环境\begin{minipage}
和\end{minipage}
包裹每张图片
\begin{figure}[h] |
需要关注的参数:
h
:代表自动调整位置\centering
表示图片居中0.48\textwidth
:代表创建一个宽度为页面宽度的48%的容器width=0.9\textwidth
:代表图片宽度为容器宽度的90%your_pic1_dir
:代表你的第一张图片相对.lex文件的相对路径your_pic2_dir
:代表你的第二张图片相对.lex文件的相对路径
调整宽度时不要让你的两张图相互重叠了
插入表格
使用环境\begin{table}
和\end{table}
包裹表格
使用\centering
设置表格居中
使用环境\begin{tabular}
和\end{tabular}
包裹具体的表格内容
使用\caption{title}
设置表格标题
普通表格示例: |
绘制普通表格关注的参数:
|c|c|c|
:c是占位符,c的个数决定了表的列数,同时c也意味着文件居中。l
:居左;r
:居右\hline
:在当前行上方绘制一条横线&
:分隔单元格\\
:分隔行
绘制三线表关注的参数:
\toprule
:顶部横线\midrule
:中部横线\bottomrule
:底部横线&
:分隔单元格\\
:分隔行
表格每列最大宽度是由最宽的单元格决定的,因此直接插入表格可能会显得非常小,一个便捷的方法是手动加入空格
\qquad
然后手动调整居中(如上方三线图示例)。
事实上,在了解完表格的基础后,我们并不需要手动建表并调整格式,可以通过在线表格创建网站快速编辑所需表格。如果使用了合并单元格等,注意网站给出添加有关包的提示。
如果你只是想创建简单的表格,或许这个在线表格创建网站使用起来更方便。
插入代码
首先添加包 listings
使用环境\begin{lstlisting}
和\end{lstlisting}
包裹代码
\usepackage{listings} |
需要关注的参数:
language=C++
:代表代码语言为C++
标签
为了能在文章快速引用公式、图片、表格、章节等,可以使用标签。
同时标签能够避免手动标号产生修改麻烦的问题。
使用\label{label_name}
设置标签
使用\ref{label_name}
引用标签
\begin{equation}\label{eq:1} |
标签建议写在环境开始
\begin{}
前。标签的命名建议:公式:
eq:eq_name
图片:pic:pic_name
表格:tab:tab_name
章节:sec:sec_name
。
参考文献
参考文献可以选择使用BibTex,也可以选择不使用。为了参考文献管理方便,建议选择使用BibTex。
Step1:
使用BibTex需要添加包biblatex
。
Step2:
在.tex文件下建立一个BibTex文件,即.bib
文件,例如my_bib.bib
。
Step3:
在BibTex文件中添加参考文献,例如:
@article{name1, |
参考文献的类型由@后面的参数决定,常见有:
article
:文章book
:书籍incollection
:书籍中的某一章(inproceedings
:会议论文report
:报告thesis
:学位论文unpublished
:未发表的论文misc
:其他类型
Step4:
在论文最末,\end{document}
之前,使用\bibliographystyle{}
和\bibliography{}
设定参考文献样式和导入数据库。
\bibliographystyle{plain} |
常见的预设样式的可选项有8种,分别是:
plain
:按字母的顺序排列,比较次序为作者、年度和标题;unsrt
:样式同plain,只是按照引用的先后排序;abbrv
:类似plain,将月份全拼改为缩写,更显紧凑;ieeetr
:国际电气电子工程师协会期刊样式;acm
:美国计算机学会期刊样式;siam
:美国工业和应用数学学会期刊样式;
Step5:
在论文中需要引用参考文献的地方使用\cite{name}
引用参考文献。
\documentclass{article} %文章类型 |
论文模板
在学习完基础知识后,就可以直接上手模板啦!
对于论文模板,我们不需要关注他的配置,只需要修改其中内容即可。
在overleaf
中,可以找到很多优秀的模板,包括全国大学生数学建模竞赛论文模板
其中template.tex
很好地演示了模板,能够应付绝大多数数模论文需求。在学习完基础知识后,看懂模板示例代码应该不难,其中的自定义命令也比较好理解,这里就不过多讲解了。
为了方便本地编写全国大学生数学建模竞赛论文,我将论文下载到本地,并打包到自己的github仓库中。如有侵权,请联系我删除。
结语
文中大部分内容学习自LaTeX快速上手与数学建模论文写作
通过简单的LaTeX学习,终于已经能够写出自己的数学建模论文了!对于有markdown基础的同学,学习LaTeX应该会比较快。
既然你已经学会了LaTeX的基础知识,现在就快去写一篇数模国赛论文吧!23333
这篇博客仅记录一下自己的学习心得,希望能对你有所帮助。