0. 引言
LaTeX对于论文排版有着巨大的便利,并且对于参考文献的引用也十分方便,不会出现使用word引用参考文献一旦更改文献引用顺序,就必须全部改编号的情况。这里记录一下如何从0开始学习使用LaTeX书写论文。
1. 软件安装&环境配置
1.1 Overleaf
如果网络足够好,那么强烈推荐Overleaf在线编辑,这部分教程就不用看了,可以直接跳到LaTeX基础语法部分。
Overleaf 是一个开源的在线实时协作的 LaTeX 编辑器。
特性:
- 协作:在单个版本上协同工作,实时查看合作编辑的内容。
- 使用方便:没有复杂的 LaTeX 安装。你需要的所有包和模板。
- 文档历史:查看已添加和删除的内容,恢复到任何旧版本。
- 随时随地工作:可离线工作,通过 Dropbox 和 GitHub 同步你的文件
本文采用了Tex live
作为LaTeX的环境,并使用了TeXStudio
作为编辑器。
1.2 Tex Live
双击下载好的texlive2020.iso
,找到install-tl-windows.bat
文件,双击运行,所有选项全部默认直接继续即可,安装过程较慢,需要耐心等待。
安装完成之后,按下键盘的win
+r
,输入cmd后敲击enter键,在打开的命令行窗口输入tex --version
,出现版本号即为安装成功,如图所示:
1.3 TeX Studio
TeX Live 自带的编辑器 TeXworks 是越更新 bug 越多,作为新手上路的工具刚刚好,但是对于有比较强的使用需求的用户来说就显得十分鸡肋。因此,我们需要一个更「聪明」的编辑器。编辑器这个东西聪不聪明,无非就是看它语法高亮、代码补全等功能是不是很舒服。比较受欢迎的编辑器有 Visual Studio Code、Sublime Text、TeXstudio、Windows 上的 WinEdt、macOS 上的 TeXpad,等等。TeXstudio 是跨平台的免费软件,是专门用来编辑 .tex
的。
下载地址:https://texstudio.sourceforge.net/
双击下载好的安装包,全程默认傻瓜式安装即可(需要注意的是这个软件所需磁盘空间有好几个G,需要找一个空间充足的磁盘安装)
2. 编辑器使用教程
-
双击软件,出现如图所示界面:
点击左上角新建文件,然后ctrl
+s
,完成tex文件的新建,就可以开始书写论文了。其中三个按钮分别是编译并查看、编译、查看。写好的tex文件需要经编译后才能查看,一般点击第一个按钮即可。 -
TeXStudio中文配置
如果需要书写中文文档,需要对TeXStudio进行编码配置,配置方法如下:
点击上方的options->Configure TeXstudio
,在弹出来的对话框中选择build
,更改Default compiler
为XeLaTex
,如图所示:
如果不习惯英文界面,可更改为中文:点击上方的options->Configure TeXstudio
,在弹出来的对话框中更改Language
为zh_CN
:
3. LaTeX基础语法
3.1 基础框架
在新建的文件中输入以下内容:
\documentclass{article}
\begin{document}
Hello world!
\end{document}
书写完成之后,点击上方第一个绿色的按钮,即可查看。
3.2 选择文档类型
\documentclass{}
规定文档的类型,可以选择文章article
,也可以选择其它类型,如book
、letter
等等
3.3 添加注释
LaTex中使用%
进行注释,在本文中将大量使用注释对代码进行说明。编译后注释的内容不会出现在文档中。如果文章内容中需要使用%
的话,需要在%
前面加上反斜杠\
。
3.4 添加标题、作者、日期
\documentclass{article}
%从此处直到begin{document}处均为导言区,一般书写文章的配置信息,如引用的包等
\title{LaTex Title} %文章标题
\author{XXX} %作者
\date{\today} %日期,today默认为今天
\begin{document} %声明文档开头,此后所有文章内容均在其中书写
\maketitle %打印文章标题等信息,必须有
Hello World!
\end{document} %文档结尾,必须和开头一一对应,否则编译会报错
书写完成之后,点击上方第一个绿色的按钮,即可查看:
3.5 添加目录
只需要在\begin{document}
后添加\tableofcontents
就可以了:
\documentclass{article}
\title{My first Latex document}
\author{XXX}
\date{8/25/2020}
\begin{document}
\maketitle
\tableofcontents
Hello world!
\end{document}
3.6 添加章节
\section{} %自动生成一级标题
\subsection{} %自动生成二级标题
\subsubsection{} %自动生成三级标题
效果如图所示:
3.7 添加段落
一般情况用不上这类代码,在文中直接书写内容即可,记得一定要换行两次才能分段
\paragraph{}
\subparagraph{}
\subsubparagraph{}
3.8 添加包
当需要用到非默认存在的包时,需要在导言区中添加\usepackage{package name}
,如:
\documentclass{article}
\usepackage{amsmath}
\title{My first Latex document}
\author{XXX}
\date{8/25/2020}
\begin{document}
\maketitle
\tableofcontents
Hello world!
\end{document}
3.9 字体设置
一般我们用fontspec
包来设置字体:
\usepackage{fontspec}
\setmainfont{Times New Roman}
3.10 字体大小
\tiny
\scriptsize
\footnotesize
\small
\normalsize
\large
\large
\LARGE
\huge
\Huge
3.11 添加图片
首先在tex
文件同一文件夹内放入自己想要引入的图片,此处命名为paper.png
,然后使用\usepackage{graphicx}
在开头引入包,在文章内容中插入图片,如以下内容所示:
\documentclass{article}
\usepackage{graphicx} %引入包
\title{LaTex Title}
\author{XXX}
\date{\today}
\begin{document}
\maketitle
Hello World!
The detail is shown in Figure \ref{fig:heizi} %引用图片
\begin{figure}[h] %h表示图片位置就在此处,t表示顶部
\centering %表示图片居中,也可选left或right
\includegraphics[scale=0.2]{paper.png} %引入图片,大括号内为图片地址,这里表示同一文件夹下
\caption{Description of figure} %图片描述
\label{fig:heizi} %标记,用于文中引用
\end{figure}
\end{document}
在文中,使用\ref{fig:figure label}
引用图片
结果如图:
3.12 插入表格
这里给出三线表的代码:
\documentclass{article}
\title{LaTex Title}
\author{XXX}
\date{\today}
\begin{document}
\maketitle
Hello World!
The detail is shown in Table \ref{test_table} %引用表格
\begin{table}[h] %声明表格开始;h表示表格位置就在此处,t表示顶部
\renewcommand{\arraystretch}{1.3}
\caption{The search results} %表格描述
\label{test_table} %表格标签,用于引用
\centering %居中,也可选left或right
\begin{tabular}{cccc} %开始表格内容
\hline %横线
\bfseries Source Type & \bfseries paper & \bfseries patent & \bfseries White paper\\ %\bfseries表示加粗
\hline
Number & 39 & 9 & 14\\
Source & 1 & 1 & 1\\
\hline
\end{tabular} %结束表格内容
\end{table} %结束表格
\end{document}
3.13 参考文献
- bib文件
首先,在tex
同级目录下新建bib
文件,这里为paper.bib
,在该文件中导入你想引用的参考文献(也可以手动书写,但不推荐)。
格式如下:
@article{islam2019multi,
title={A multi-vocal review of security orchestration},
author={Islam, Chadni and Babar, Muhammad Ali and Nepal, Surya},
journal={ACM Computing Surveys (CSUR)},
volume={52},
number={2},
pages={1--45},
year={2019},
publisher={ACM New York, NY, USA}
}
其中,islam2019multi
为文中引入需要用到的标签
- 使用谷歌学术导入bibtex
以谷歌学术为例:
点击左上角按钮,选择设置
在搜索结果选项,勾选显示bibtex
,点击保存:
完成之后,使用谷歌学术搜索文献,就会显示导入bibtex的链接:
点击该链接,将跳转之后的页面内容全选并复制粘贴到我们的bib
文件中即可。
如果需要引用大量参考文献,则可以将文献添加进我的图书馆,点击星号即可添加:
在图书馆中可以批量选择导出:
- 文档代码
将`usepackage[numbers, sort&compress]{natbib}添加到导言区引入包,其中
compress`代表引用多个参考文献自动合并
添加语句\bibliographystyle{unsrt}
可使参考文献按引用顺序排序
在文档末尾\end{document}
前添加\bibliography{paper.bib}
使参考文献显示在文档末尾,括号中为参考文献的bib文件
在文中使用\cite{bib label}
引用参考文献
示例代码如下:
paper.bib
文件:
@article{islam2019multi,
title={A multi-vocal review of security orchestration},
author={Islam, Chadni and Babar, Muhammad Ali and Nepal, Surya},
journal={ACM Computing Surveys (CSUR)},
volume={52},
number={2},
pages={1--45},
year={2019},
publisher={ACM New York, NY, USA}
}
document.tex
文件内容:
\documentclass{article}
\usepackage[numbers, sort&compress]{natbib}
\bibliographystyle{unsrt}
\title{LaTex Title}
\author{XXX}
\date{\today}
\begin{document}
\maketitle
Hello World!
The detail is shown in \cite{islam2019multi} %引用
\bibliography{paper.bib}
\end{document}
结果如图:
3.14 公式
教程:http://mohu.org/info/symbols/symbols.htm
对应直接插入即可
4. 常见问题
4.1 编码问题
遇到字符报错或无法显示等问题,在导言区添加:
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\UseRawInputEncoding
4.2 参考文献URL无法显示问题
在tex
文件中的导言区添加\usepackage{url}
引入包,
将bib
文件中的url={}
替换为note={\url{}}
,例如:
@online{number_3,
author={Paul Proctor, Oliver Rochford},
year={2015},
month={November},
note={\url{https://www.gartner.com/en/documents/3166239}},
title={Innovation Tech Insight for Security Operations, Analytics and Reporting},
date={11}
}
5. 模板
如果你用它来写文献,那么直接用现成的各类模板是最好的办法!