LaTex
LaTeX 环境的安装和配置
TexLive2018 的安装
LaTeX 的发行版软件众多,一般使用 TexLive+合适的编辑器即可。
- 进入官网,依次点击
OnDVD
,downloading the TexLive ISO image
,download from a nearby CTAN mirror
,texlive2018.iso
进行下载镜像文件。 - 点击
install-tl-advanced.bat
文件,进行安装。可以选择安装的内容,修改需要安装的包。- 去掉多余的语言包,只保留 Chinese 和 English 即可。
- 去掉 Texworks editor 这个鸡肋的自带编辑器。
- 相关命令
tex -v, latex -v, xelatex -v
:用于测试是否安装好。tlmgr update --all
:用于更新 Texlive。
Vscode 及 Latex workshop 插件的安装
Vscode 是一款很优秀的编辑器,适合各种开发及编辑工作。Latex workshop 则是适用于在 Vscode 上编辑 Latex 的很好用的插件,下面主要是它的配置介绍。
编译方式(tool
)
Latex 有很多编译方式, 比如latex
,xelatex
,pdflatex
,latexmk
等等。这里推荐使 xelatex, 它使用的是 utf-8 编码方式,支持中文,但是 Latex workshop 默认的编译方式是 latexmk,可以通过修改 Latex workshop 的 tool 设置来自定义编译方式,如下:
"latex-workshop.latex.tools": [
{
"name": "xelatex",
"command": "xelatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"%DOCFILE%"
]
},
{
"name": "pdflatex",
"command": "pdflatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOCFILE%"
]
},
{
"name": "bibtex",
"command": "bibtex",
"args": [
"%DOCFILE%"
]
}
]
将 tools 中的
%DOC%
替换成%DOCFILE%
就可以支持中文路径下的文件了
编译组合(recipe
)
如果我们要对一个文档/项目完整的编译(比如pdflatex->bibtex->pdflatex->pdflatex
)我们需要用到编译组合(recipes
)。Latex workshop 默认添加了两个recipes
,分别是latexmk
和pdflatex -> bibtex -> pdflatex*2
,初此之外,也可以在设置的recipe
选项中修改组合方式,如下:
"latex-workshop.latex.recipes": [
{
"name": "xelatex",
"tools": [
"xelatex"
]
},
{
"name": "xelatex ➞ bibtex ➞ xelatex × 2",
"tools": [
"xelatex",
"bibtex",
"xelatex",
"xelatex"
]
}
]
中文环境的配置
高德纳为了让他的巨著《计算机程序设计艺术》排版更精美发明了 Tex,但是他没有考虑中文的使用环境, 不过现在可以使用ctex
宏包来支持中文.
- 文档使用
utf-8
编码。 - 引入宏包
\usepackage{ctex}
,并且使用xelatex
编译。 - 字体的设置:
ctex
中内置了 6 种中文字体:heiti, kaishu, songti, lishu, youyuan, fangsong
。
LaTeX 源文件的基本结构
- LaTeX 源文件分为导言区和正文区两部分构成。
- 一个 LaTeX 源文件有且只有一个
document
环境。 $
符号内的为数学模式,外的为文本模式。且$**$
为行内模式,$$**$$
为行间模式。- 一个或多个空行表示段落的分隔。
% 导言区
% 导言区用于全局的设置,引入宏包等。
\documentclass{article} % 除了article外,还有book,report, letter等类型
\usepackage{ctex} % usepackage用于导入宏包,这里导入了ctex宏包
\title{My first document}
\author{Zhigao Hong}
\date{\today}
% 正文区
% 正文区用于书写文章的正文部分
\begin{document} % begin用于开始一个环境,一个文章有且只有一个document环境
\maketitle
Hello, \LaTeX.
Let $f(x)$ be defined by $f(x)=3x^2+1$.
\end{document}
LaTeX 的字体设置
字体的设置可以使用字体命令和字体声明两种设置方式,同时可以使用{}
限定其作用范围,否则自设置起,后面一直有效直至重新设置字体。
字体族
字体族有:罗马字体、无衬线字体、打字机字体。
- 罗马字体:
\textrm {xxx}
或者{\rmfamily xxx}
。 - 无衬线字体:
\textsf {xxx}
或者{\sffamily xxx}
。 - 打字机字体:
\texttt {xxx}
或者{\ttfamily xxx}
。
字体加粗
- 加粗:
\textbf {xxx}
或者{\bfseries xxx}
。
字体斜体
- 斜体:
\textit {xxx}
或者{\itshape xxx}
。
中文字体
设置中文字体必须引入ctex
宏包,其中内置了 6 种中文字体。
- 黑体:
{\heiti xxx}
。 - 其他类似:
kaishu, songti, lishu, youyuan, fangsong
。
字体大小
- 字体的大小也是通过一系列字体声明实现:
tiny, scriptsize, footnotesize, small, normalsize, large, Large, LARGE, huge, Huge
。 - 这些大小描述是相对于
normalsize
而言的,而normalsize
的大小是在导言区的documentclass[10pt]{article}
设置的,一般为 10,11,12 磅。 - 中文字体还可以使用
\zihao{字号值}
设置,如同 word 文档一样。
LaTeX 的篇章结构
在 LaTeX 中,可以使用section{xx}, subsection{xx}, subsubsection{xx}
等命令来撰写文章的大致结构。
\documentclass{article}
\usepackage{ctex}
\title{My first document}
\author{Zhigao Hong}
\date{\today}
\begin{document}
\maketitle
\section{Introduction}
\label{sec::introduction}
\section{Proposed scheme}
\label{sec::proposed method}
\subsection{method1}
\label{subsec::method1}
\subsection{method2}
\label{subsec::method2}
\section{Experimental results and discussion}
\label{sec::experimental results and discussion}
\section{Conclusion}
\label{sec::conclusion}
\section{References}
\bibliography{mybibfile}
\end{document}
LaTeX 中的特殊字符
空白字符
- 空行分段,多个空行等同于 1 个。
- 英文中多个空格视为 1 个,中文中忽略空格。
- 当要输入多个空格时,要使用
\quad
命令。
控制符
由于许多符号有着特殊的含义,需要转义:\#, \$, \%, \{, \}, \~, \^, \_, \&
等等。
排版符号和 LaTeX 的标志符号
引号
- 单引号:
数字1左边的点号
表示左单引号,'
表示右单引号。 - 双引号:两个左单引号为左双引号,两个右单引号为右双引号。
连字符
- 短连字符:
-
。 - 中连字符:
--
。 - 长连字符:
---
。
LaTeX 中的图片
- 在 LaTeX 中使用
graphicx
这个宏包插入图片。- 导言区:
\usepackage{graphicx}
用于引入宏包。\graphicspath{{目录1/}, {目录2/}}
用于指定图片目录。 - 语法:
\includegraphics[可选参数]{文件名}
,其中,文件名不加后缀。 - 支持格式:
eps, pdf, png, jpg
等。
- 导言区:
- 可选参数,支持指定大小,缩放比例等。
scale=0.3
,缩放因子。height=2cm, width=0.15\textwidth
,指定长宽。angle=-45
,指定旋转角度。
LaTeX 中的表格
直接使用在线 LaTeX 表格,用命令做表格简直不能再麻烦了。
LaTeX 中的浮动体
使用浮动体,可以对图片和表格的位置进行灵活管理。这需要使用begin
命令来创建浮动体环境。
- 在环境后,还可以加入允许位置参数:h(here)、t(top)、b(bottom)、p(page),默认为 tbp。
- 使用
caption
用于标题的显示。 - 使用
subfigure
实现图片的混排。
figure 浮动体
\begin{figure*}[htb]
\centering
\subfigure[]{
\includegraphics[width=0.15\textwidth]{Baboon}
}
\subfigure[]{
\includegraphics[width=0.15\textwidth]{Barbara}
}
\subfigure[]{
\includegraphics[width=0.15\textwidth]{Boat}
}
\subfigure[]{
\includegraphics[width=0.15\textwidth]{Goldhill}
}
\subfigure[]{
\includegraphics[width=0.15\textwidth]{Lena}
}
\caption{Six test images: (a) Baboon. (b) Barbara. (c) Boat . (d) House. (e) Lena.}
\label{fig6}
\end{figure*}
table 浮动体
\begin{table*}[htbp]
\centering
\caption{Comparison of four methods on test images in \myref{fig6}{Fig} based on QF = 60}
\label{tab1}
\begin{tabular}{ccccccc}
\hline
\multirow{2}{*}{\textbf{Images}} & \multicolumn{6}{c}{\textbf{Payload(bits) / PSNR(dB)}} \\ \cline{2-7}
& & 4000 & 6000 & 8000 & 10000 & 120000 \\ \hline
\textbf{Baboon} & Huang et al & 41.6292 & 39.6411 & 38.3768 & 37.0705 & 36.3569 \\ \hline
& Wedaj et al & 42.4274 & 40.7553 & 39.4249 & 37.7216 & 36.7317 \\ \hline
& Hou et al & 44.3296 & 42.0547 & 40.2064 & 38.6490 & 37.3514 \\ \hline
& Proposed & 43.4202 & 41.3573 & 39.8080 & 38.5896 & 37.4733 \\ \hline
\textbf{Barbara} & Huang et al & 43.6504 & 41.8896 & 40.5739 & 38.9833 & 37.5838 \\ \hline
& Wedaj et al & 43.4992 & 42.1739 & 40.5565 & 39.4102 & 38.6302 \\ \hline
& Hou et al & 45.9022 & 42.9165 & 40.5833 & 39.1323 & 37.8757 \\ \hline
& Proposed & 44.9008 & 42.7855 & 41.2021 & 39.9609 & 38.8448 \\ \hline
\textbf{Boat} & Huang et al & 44.1428 & 42.1220 & 40.4407 & 38.9576 & 37.7936 \\ \hline
& Wedaj et al & 44.0611 & 41.4388 & 40.4950 & 39.0900 & 38.0499 \\ \hline
& Hou et al & 45.0766 & 42.6497 & 40.8703 & 39.5630 & 38.4274 \\ \hline
& Proposed & 44.2932 & 42.0677 & 40.4485 & 39.2217 & 38.2122 \\ \hline
\textbf{House} & Huang et al & 44.3822 & 42.4522 & 41.2621 & 40.2653 & 39.4005 \\ \hline
& Wedaj et al & 42.7945 & 42.6797 & 41.4402 & 40.1956 & 39.1621 \\ \hline
& Hou et al & 44.9146 & 42.8700 & 41.2894 & 40.0333 & 39.0089 \\ \hline
& Proposed & 44.9769 & 42.8880 & 41.4127 & 40.3581 & 39.3878 \\ \hline
\textbf{Lena} & Huang et al & 46.5117 & 44.6028 & 42.7461 & 41.1829 & 39.6356 \\ \hline
& Wedaj et al & 45.0363 & 43.1874 & 41.6598 & 40.3515 & 39.3753 \\ \hline
& Hou et al & 46.2696 & 43.8200 & 41.8304 & 40.2713 & 38.7410 \\ \hline
& Proposed & 46.3358 & 44.0285 & 42.3115 & 40.8457 & 39.5046 \\ \hline
\end{tabular}
\end{table*}
LaTeX 中的公式
行内公式
- 美元符号:
$f(x)=a^2x+bx+c$
。 - 小括号:
\(f(x)=a^2x+bx+c\)
。
行间公式
- 双美元符号:
$$f(x)=a^2x+bx+c$$
。 - 中括号:
\[f(x)=a^2x+bx+c\]
。
自动编号公式
使用equation
环境,该公式会单独一行。
\begin{equation}
y = x +1
\end{equation}
参考文献 BibTex
将参考文献单独处理,实现一次管理,多次使用。
- 新建文件
mybibifile.bib
。 - 在导言区:
\bibliographystyle{plain}
,此外还有alpha, abbrv
等排序规则。 - 在需要输出参考文献的地方使用:
\bibliography{mybibfile.bib}
。 - 默认下是不会出现未引用的文献,如果要强制加上为引用文献:在上一个命令前加
\nocite{*}
。
特殊命令
texdoc ctex
:cmd 命令,查看 ctex 宏包手册。texdoc lshort-zh
:cmd 命令,查看 latex 使用教程。\centering
:浮动体的居中。\caption{xxx}
:浮动体的标题为 xxx。\label{xxx}
:设置标签名为 xxx,以用于交叉引用。\ref{xxx}
:引用标签名为 xxx 的内容。\cite{xxx}
:引用 bib 文件的文章。\newcommand{命令名}[参数个数]{具体定义}
:例如,\newcommand{\PRC}{People's Republic of China}
,\newcommand{\loves}[2]{#1 喜欢 #2}
,\loves{猫}{鱼}
,\newcommand{\myref}[1]{Eq.\ref{#1}}
。\begin{enumerate} xxx \end{enumerate}
:有序列表环境。\begin{itemize} xxx \end{itemize}
:无序列表环境。\item xxx
:列表中的单个元素。\geometry{left=2cm, right=2cm, top=2cm, bottom=2.5cm}
:设置页边距。\\
:在文本中表示换行。