前言
文章性质:学习笔记 📖
文章内容:主要记录了作者在初次使用 overleaf 时的操作过程。
冷知识+1:小伙伴们不经意的 点赞 👍🏻 与 收藏 ✨ 可以让作者更有创作动力!
目录
一、图片的相关操作
本章节主要介绍了 overleaf 中图片的上传、插入、引用等操作。
1、上传图片
在 overleaf 项目的根目录下创建 figs 文件夹,将论文需要用到的图片文件上传至 figs 文件夹中,如下图所示。
\usepackage{graphicx} % 导入包
\graphicspath{{figs/}} % 图片路径
2、插入图片
在正文内容中插入如下内容:
\begin{figure}
\centering
\includegraphics[scale=1.0]{Figure-1.png} % scale 表示缩放比例
\caption{Diagram} % 图片名称
\label{FIG:1}
\end{figure}
说明: \ begin {figure} \ end {figure} 表示在单栏格式下插入图片; \ begin {figure*} \ end {figure*} 表示在双栏格式下插入图片。
3、引用图片
在插入图片时,我们使用 \ label {FIG:1} 创建了图题的标识符,借助这个标识符可使用 \ ref {FIG:1} 来引用这张图片。
示例:The diagram is shown in Figure \ref{FIG:1}.
4、组合多张图片
在正文内容中插入如下内容:
% 导入包:\usepackage{subfigure}
\begin{figure}[!t]
\centering
\subfigure[庆]{\label{fig:a}\includegraphics[width=1.64in]{Figure-0.png}}
\subfigure[余]{\label{fig:b}\includegraphics[width=1.64in]{Figure-0.png}} \\
\subfigure[年]{\label{fig:c}\includegraphics[width=1.64in]{Figure-0.png}}
\subfigure[贰]{\label{fig:d}\includegraphics[width=1.64in]{Figure-0.png}} \\
\label{fig:6}
\caption{庆余年2截图}
\end{figure}
二、公式的相关操作
本章节主要介绍了 overleaf 中的行内公式和行间公式,其中行间公式又包括非自动编号和自动编号两种类型。
1、行内公式
行内公式:在公式的前后加上 $ 。
示例:$a+b=c$
2、行间公式
非自动编号:在公式前加上 \ [ ,在公式后加上 \ ] 。
示例:\[a+b=c\]
自动编号的:在公式前加上 \ begin {equation} ,在公式后加上 \ end {equation} 。
\begin{equation}
a+b=c
\label{Eq:1}
\end{equation}
3、引用行间公式
由于在自动编号的公式中我们用 \ label {Eq:1} 创建了公式的标识符,因此同样可以使用 \ ref {Eq:1} 来引用这张图片。
示例:The curve defined by Equation \ref{Eq:1} ...
4、公式常用符号
这里大致介绍了公式中部分常用的符号,主要参考了下面这篇博客:
(1)上标&下标
在公式中,若想使用上标,可借助字符 ^ ;若想使用下标,可借助字符 _ 。
示例:$L_{IoU}^{*}=L^{*}_{IoU}$
说明:若上标或下标中包含多个字符,应当用花括号 { } ;若既包含上标又包含下标,则两者顺序不重要。
(2)数学符号
部分数学基础函数符号如下:
1、排列数:\text{C}^2_7
2、log 数:\log_3 5
3、三角函数:\sin({x}^2)
4、希腊字母:\alpha \beta \delta \theta \gamma
5、乘法:3 \times 4=12
6、分数:\dfrac{20}{3}
7、开根号:h=\sqrt{\dfrac{2h}{g}}
8、开 n 次方:h=\sqrt[n]{\dfrac{2h}{g}}
(3)最值区间
最大值、最小值函数等使用 \ max 、 \ min 。
示例 1 :$ \max \limits_{1<x<100} f(x) $
示例 2 :$ \min_{x \in R} f(x) $
说明:我们这里分别使用了 \ limits_{} 和 \ in 来限制区间。
(4)数学公式
可以使用 \ underset {} {} 在公式符号底部写公式,还可以使用 \ substack { \\ } 在符号下部换行。
示例 1 :\underset{0\leq j \leq k-1}{\arg\min}
示例 2 :\sum_{\substack{0<i<n \\ 0<j<n}} A_{ij}
可以使用 \ traingleq 表示定义符号。
示例:A = \triangleq B
(5)箭头符号
可以使用 \ underrightarrow {} 表示下部向右箭头,还可以使用 \ underleftarrow {} 表示下部向左箭头。
示例;\underrightarrow{ \text{text content} }
可以使用 \ xrightarrow {} 表示向右箭头,还可以使用 \ xleftarrow {} 表示向左箭头。
示例:A \xleftarrow{n=0} B \xrightarrow[T]{n>0} C
(6)集合符号
部分常用集合符号如下:
1、并集:A \cup B
2、交集:A \cap B
3、上划线:\overline{U}
三、表格的相关操作
本章节主要介绍了 overleaf 中表格的插入、引用等操作。
1、插入表格
在正文内容中插入如下内容:
\begin{table}[width=1.\linewidth, cols=4, pos=h]
\caption{This is a test caption.}
\label{Tabel:1}
\begin{tabular*}{\tblwidth}{@{} LLLL@{} } % LLLL 表示两列都是左对齐
\toprule
Col 1 & Col 2 & Col 3 & Col 4 \\
\midrule
12345 & 12345 & 123 & 12345 \\
12345 & 12345 & 123 & 12345 \\
12345 & 12345 & 123 & 12345 \\
12345 & 12345 & 123 & 12345 \\
12345 & 12345 & 123 & 12345 \\
\end{tabular*}
\end{table}
2、引用表格
在插入表格时,我们使用 \ label {Tabel:1} 创建了表格的标识符,借助这个标识符可使用 \ ref {Tabel:1} 来引用这个表格。
示例:The experimental results are shown in Table \ref{Tabel:1}.
四、文献的相关操作
本章节主要介绍了 overleaf 中文献的查找、添加、引用等操作。需提前在项目的根目录下创建 reference.bib 文件。参考博客:
1、查找文献
我们可以在百度学术、谷歌学术、IEEE 或者 SCI 网页上找到文献的 BibTeX 。
2、添加文献
将查询到的文献的 BibTeX 复制到 overleaf 的 reference.bib 文件中,调整成如下格式:
@article{r21,
title={Cascade R-CNN: High quality object detection and instance segmentation},
author={Cai, Zhaowei and Vasconcelos, Nuno},
journal={IEEE transactions on pattern analysis and machine intelligence},
volume={43},
number={5},
pages={1483-1498},
year={2019},
publisher={IEEE}
}
说明:第一个逗号之前的字段可以自定义,这个名字就是在文章引用时候的名字,图中自定义为 r21 。
3、引用文献
在文章中,我们可以借助 \ citep {} 引用对应的文献,当然还要提前导入需要的包。
\bibliographystyle{model1-num-names}
示例:Cascade R-CNN \citep{r21}
说明:model1-num-names 是项目根目录下的 .bst 文件。
五、伪代码的相关操作
本章节主要介绍了 overleaf 中算法伪代码的插入、引用等操作,主要参考了这篇博客:
1、创建伪代码
创建伪代码的示例如下:
\documentclass[11pt]{article}
\usepackage{CJK}
\usepackage[top=2cm, bottom=2cm, left=2cm, right=2cm]{geometry}
\usepackage{algorithm}
\usepackage{algorithmicx}
\usepackage{algpseudocode}
\usepackage{amsmath}
\floatname{algorithm}{算法}
\renewcommand{\algorithmicrequire}{\textbf{输入:}}
\renewcommand{\algorithmicensure}{\textbf{输出:}}
\begin{document}
\begin{CJK*}{UTF8}{gkai}
\begin{algorithm}
\caption{用归并排序求逆序数}
\begin{algorithmic}[1] %每行显示行号
\Require $Array$数组,$n$数组大小
\Ensure 逆序数
\Function {MergerSort}{$Array, left, right$}
\State $result \gets 0$
\If {$left < right$}
\State $middle \gets (left + right) / 2$
\State $result \gets result + $\Call{MergerSort}{$Array, left, middle$}
\State $result \gets result + $\Call{MergerSort}{$Array, middle, right$}
\State $result \gets result + $\Call{Merger}{$Array, left, middle, right$}
\EndIf
\State \Return{$result$}
\EndFunction
\State
\Function{Merger}{$Array, left, middle, right$}
\State $i \gets left$
\State $j \gets middle$
\State $k \gets 0$
\State $result \gets 0$
\While{$i < middle$ \textbf{and} $j < right$}
\If{$Array[i] < Array[j]$}
\State $B[k++] \gets Array[i++]$
\Else
\State $B[k++] \gets Array[j++]$
\State $result \gets result + (middle - i)$
\EndIf
\EndWhile
\While{$i < middle$}
\State $B[k++] \gets Array[i++]$
\EndWhile
\While{$j < right$}
\State $B[k++] \gets Array[j++]$
\EndWhile
\For{$i = 0 \to k-1$}
\State $Array[left + i] \gets B[i]$
\EndFor
\State \Return{$result$}
\EndFunction
\end{algorithmic}
\end{algorithm}
\end{CJK*}
\end{document}
2、插入伪代码
在论文中插入伪代码时,需要对上面的代码做出些许调整:
① 将前半部分放到 overleaf 编辑页面的最前面,即论文格式的配置部分那里:
\documentclass[11pt]{article}
\usepackage{CJK}
\usepackage[top=2cm, bottom=2cm, left=2cm, right=2cm]{geometry}
\usepackage{algorithm}
\usepackage{algorithmicx}
\usepackage{algpseudocode}
\usepackage{amsmath}
\floatname{algorithm}{算法}
\renewcommand{\algorithmicrequire}{\textbf{输入:}}
\renewcommand{\algorithmicensure}{\textbf{输出:}}
② 将后半部分的具体算法放到论文中需要添加的地方,即如下部分按照论文的需要放置:
\begin{document}
\begin{CJK*}{UTF8}{gkai}
\begin{algorithm}
\caption{用归并排序求逆序数}
\begin{algorithmic}[1] %每行显示行号
\Require $Array$数组,$n$数组大小
\Ensure 逆序数
\Function {MergerSort}{$Array, left, right$}
\State $result \gets 0$
\If {$left < right$}
\State $middle \gets (left + right) / 2$
\State $result \gets result + $\Call{MergerSort}{$Array, left, middle$}
\State $result \gets result + $\Call{MergerSort}{$Array, middle, right$}
\State $result \gets result + $\Call{Merger}{$Array, left, middle, right$}
\EndIf
\State \Return{$result$}
\EndFunction
\State
\Function{Merger}{$Array, left, middle, right$}
\State $i \gets left$
\State $j \gets middle$
\State $k \gets 0$
\State $result \gets 0$
\While{$i < middle$ \textbf{and} $j < right$}
\If{$Array[i] < Array[j]$}
\State $B[k++] \gets Array[i++]$
\Else
\State $B[k++] \gets Array[j++]$
\State $result \gets result + (middle - i)$
\EndIf
\EndWhile
\While{$i < middle$}
\State $B[k++] \gets Array[i++]$
\EndWhile
\While{$j < right$}
\State $B[k++] \gets Array[j++]$
\EndWhile
\For{$i = 0 \to k-1$}
\State $Array[left + i] \gets B[i]$
\EndFor
\State \Return{$result$}
\EndFunction
\end{algorithmic}
\end{algorithm}
\end{CJK*}
\end{document}
六、其他操作
本章节主要介绍了 overleaf 中其他常用的操作。
1、各级标题
一级标题:\section{一级标题}
二级标题:\subsection{二级标题}
2、另起一段
另起一段:空行
3、插入空格
插入空格:\quad