LaTeX的基本语法及使用方法

  • 技巧
  • 1.前言
    • 1.1. \ (反斜杠) : 命令的标志
    • 1.2. 注释
    • 1.3. 导言区与正文区
    • 1.4 文档类型
    • 1.5 宏包
    • 1.6 换行
    • 1.7换段
  • 2. 中文处理方法
    • 2.2 定义新命令
    • 2.3 查看宏包使用文档
  • 3.字体字号及颜色设置
  • 4.LaTeX文档基本结构
    • 4.1纸张布局
    • 4.2大纲 目录及标题
      • 4.2.1 标题
      • 4.2.2 文章大纲及目录
        • 1.章节大纲
        • 2.章节大纲及目录
        • 3.文章目录
  • 5.LaTeX中特殊字符
    • 5.1空格
    • 5.2 控制符
    • 5.3 排版符号
    • 5.4 引号
    • 5.5 连字符 及非英文字符
  • 6.LaTeX中的插图
    • 6.1单张图片
    • 6.2 多张图片
    • 6.3并排插入多张图片
    • 6.4 竖排插入多张图片
  • 7.LaTeX中的表格
    • 7.1表格
    • 7.2 三线表
  • 8.LaTeX中的浮动体
  • 9.LaTeX中的数学公式
    • 9.1数学公式初步
    • 9.2数学公式矩阵
    • 9.3 数学多行公式
  • 10.LaTeX中的参考文献
    • 10.1 参考文献bibitem (一次使用一次管理)
    • 10.2参考文献BibTex (一次管理 多次使用)
    • 10.3 参考文献BibLaTeX (一次管理 多次使用)
  • 11.LaTeX中的自定义命令和环境
  • 11.LaTeX常见问题
    • 取消段落自动缩进
    • 换页
    • 页眉跟页脚
    • 页边距
    • 条目 列举编号 描述
    • 让三级标题不在目录上显示
    • 多个tex文件汇总主文件
    • 修改章节标题格式
    • 只显示一、二级标题
    • 多行公式跨页显示
    • 配置父文件夹、图片库
    • 三线表宏包
    • 附录
    • 文献引用
    • 指定章节等的初始值
    • 去除目录页的页码页眉等
    • 表格:控制前后距离、合并单元格、控制单元格宽度、字体带下划线
    • 定义个人信息栏
    • 在tex里面插入外部PDF自定义封面
    • 给PDF添加水印
    • 图片与文字并排
    • 字体下标在文字正下方
    • 插入python代码

技巧

使用XeLaTex编译引擎进行编译,能在有错误的地方提示一个?号
使用方法:

  1. 在tex文件旁边点击空白地方然后右键选择在“在终端中打开”
  2. 输入 xelatex Clustering 进行编译
  3. 输入pwd可以查看文件路径

1.前言

1.1. \ (反斜杠) : 命令的标志

1.2. 注释

单行注释 : %
多行注释 :

\iffalse
注释内容
\fi

1.3. 导言区与正文区

\maketitle 默认在标题后显示当天日期,如果不想显示这个日期,用

\ title{标题}
\ date{}
\ maketitle可以用date自定义显示的时间,如:
date{完成于2009年7月20日}

不加时间, 作者时调整标题间距

% 导言区
\makeatletter % change default title style
\renewcommand*\maketitle{%\begin{center}% 居中标题\bfseries % 默认粗体{\LARGE \@title \par} % LARGE字号\vskip 1em% %%%  标题下面只有1em的缩进或margin{\global\let\author\@empty}%{\global\let\date\@empty}%\thispagestyle{empty} %  不设置页面样式\end{center}%\setcounter{footnote}{0}%
}
\makeatother
%  导言区:
%LaTeX提供三种基本文档,article, report和book。三者分别用来写小篇幅的文章、中篇幅的报告和长篇幅的书籍
\documentclass{article}  \usepackage[UTF8]{ctex}  % 使用宏包(为了能够显示汉字)
\newcommand\degree{^\circ} % 定义新命令 degree% 设置页面的环境,a4纸张大小,左右上下边距信息
\usepackage[a4paper,left=10mm,right=10mm,top=15mm,bottom=15mm]{geometry}\title{\heiti 杂谈勾股定理}  % 文章标题 \heiti黑体
\author{\kaishu 张三}   % 作者的名称 \kaishu楷书
\date{\today}       % \today当天日期%  正文区  注意正文区编辑要有始有终,即必须在环境内编辑
\begin{document}\maketitle % 显示标题等内容 % 两句子分行用空行表示 多空行默认为一个空行Let $f(x)$ be defined by the formula$ f(x)=3x^2+2+x-1$   % $里面为数学模式,在$外面为文本模式  单$为行内公式, $$为行间公式(单独一行居中)% \angle 为角度 degree需要定义新命令勾股定理:设直角三角形 $ABC$, 其中$\angle C=90\degree$, 则有\begin{equation} % 此处引入一个新环境equation 用于产生带编号的行间公式AB^2 = BC^2 + AC^2.\end{equation}
\end{document}

1.4 文档类型

\documentclass{article}是确定了文档类型为article; 一般LaTeX提供三种基本文档,此外两种是report和book。三者分别用来写小篇幅的文章、中篇幅的报告和长篇幅的书籍。 另外还有一种 letter (注意:该文档类型不需要\maketitle)

1.5 宏包

LaTeX 可以导入各种宏包,以使用相应宏包的功能,其中一条语句中可以导入多个宏包

\usepackage{宏包1, 宏包2}

常用的宏包:
ctex:中文支持
amsmath:latex数学公式支持
graphicx:插入图片
algorithm和algorithmic:算法排版
listings:插入代码块

1.6 换行

\\:换行,一般在一行的最后写。不产生缩进
\\[offset]:换行,并且与下一行的行间距为原来行间距+offset,offset单位一般是em或pt

1.7换段

源代码空一行即可进行换段(推荐)。
也可以使用代码\par进行换段,一般在一段的最后写。

2. 中文处理方法

无论是在线工具还是本地工具,LaTeX默认都是不支持中文的,因此需要在源代码和配置上稍作修改才可以让LaTeX支持中文,步骤如下:

1.编译器配置:XeLaTeX
2.tex文件编码:utf-8
3.代码开头导言区添加:
方式1(推荐):添加宏包

% -- coding: UTF-8 --
\usepackage[UTF8]{ctex}

方式2:设置文档类型

% -- coding: UTF-8 --
\documentclass[UTF8]{ctexart} % % ctexbook ctexreport

2.2 定义新命令

在导言区 标题前面使用以下语句定义一个\degree

\newcommand\degree{^\circ}

2.3 查看宏包使用文档

在cmd 里面使用 texdoc 宏包 查看对应文档
例如 texdoc ctex

3.字体字号及颜色设置

在latex里面有5中字体属性

%  导言区:
\documentclass{article}
\usepackage{ctex}
\newcommand{\myfond}{\textbf{\textsf{Fancy Text}}}% 使用新命令设置字体 可以通过修改newcommand 中对应的字体以达到修改全局设置的字体% 正文区
\begin{document}% 字体族的设置 (罗马字体 无衬线字体  打字机字体)\textrm{Roman Family} % 罗马字体 \textsf{Sans Serif Family}  \texttt{Typewriter Family}% 使用字体命令\textrm 作用于命令的参数Roman Family 其他同理\rmfamily Roman Family  %声明后续字体为罗马字体 {\sffamily Sans Serif Family} {\ttfamily Typewriter Family}% 也可以使用字体声明\rmfamily作用于后续文本, 可以使用大括号{}对文本进行分组,限定字体声明的作用范围% 遇到其他字体声明则停止,使用新字体声明% 字体序列设置 (粗细 ,宽高)\textmd{Medium series} \textbf{boldface series}{\mdseries Medium serires} {\bfseries boldface series}% 字体形状(直立 斜体 伪斜体 小型大写)\textup{Upright Shape} \textit{Italic Shape} \textsl{Slanted Shape} \textsc{Small Caps Shape}{\upshape Upright Shape} {\itshape Italic Shape} {\slshape Slanted Shape} {\scshape Small Caps Shape}% 中文字体设置 注意要使用\usepackage{ctex} {\songti 宋体}{\heiti 黑体}{\fangsong 仿宋}{\kaishu 楷书}{\bf 粗体}{\it 斜体}{\sl 斜体}\textbf{粗体}\textit{斜体}\textsl{斜体}% 字体大小设置 具体字号大小可以查看ctex文档% 以下大小是相对于\documentclass[11pt]{article}  中11pt(任意设置)的大小{\tiny            Hello} \\{\scriptsize    Hello} \\{\footnotesize    Hello} \\{\small        Hello} \\{\normalsize   Hello} \\{\large            Hello} \\{\large        hello} \\{\LARGE            hello} \\{\huge             hello} \\{\huge          hello} \\% 中文字号设置命令\zihao{-0} 你好!\myfond \end{document}

颜色设置

% 需要导入宏包\usepackage{xcolor}\documentclass{article}
\usepackage[UTF8]{ctex}
\usepackage{color,xcolor}\setlength{\parindent}{0pt}% 预先定义好的颜色: red, green, blue, white, black, yellow, gray, darkgray, lightgray, brown, cyan, lime, magenta, olive, orange, pink, purple, teal, violet.% 定义颜色的5种方式
\definecolor{light-gray}{gray}{0.95}    % 1.灰度
\definecolor{orange}{rgb}{1,0.5,0}      % 2.rgb
\definecolor{orange}{RGB}{255,127,0}    % 3.RGB
\definecolor{orange}{HTML}{FF7F00}      % 4.HTML
\definecolor{orange}{cmyk}{0,0.5,1,0}   % 5.cmyk\begin{document}% \pagecolor{yellow}          %设置背景色为黄色% 使用颜色的常用方式
\textcolor{green}{绿色} % textcolor+颜色
\color{orange}{橙色} % color+颜色
\textcolor[rgb]{0,1,0}{绿色} % textcolor+rgb
\color[rgb]{1,0,0}{红色} % color+rgb% 使用底色
\colorbox{red}{\color{black}红底黑字}
\fcolorbox{red}{green}{红框绿底} % 框色+背景色\end{document}

4.LaTeX文档基本结构

4.1纸张布局

% 设置页面的环境,a4纸张大小,左右上下边距信息
\usepackage[a4paper,left=10mm,right=10mm,top=15mm,bottom=15mm]{geometry}

4.2大纲 目录及标题

4.2.1 标题

% 正文区
\section{一级标题}
\subsection{二级标题}
\subsubsection{二级标题} 

若使用\documentclass{ctexart} ctexart文档类的标题居中排版,此时可以通过下面方式修改格式(其他文档类cxtexbook,ctexrep)

%=======设置标题格式=======
% 此示例居左, 具体详情可查看对应宏包手册% 导言区
\ctexset{section = {format += \zihao{-4} \heiti \reggedright,name = {,、},number = \chinese{section},beforeskip = 1.0ex plus 0.2ex minus .2ex,afterskip = 1.0ex plus 0.2ex minus .2ex,aftername = \hspace{0pt}},subsection = {format += \zihao{5} \heiti \reggedright,name = {,、},number = \arabit{subsection},beforeskip = 1.0ex plus 0.2ex minus .2ex,afterskip = 1.0ex plus 0.2ex minus .2ex,aftername = \hspace{0pt}}}

4.2.2 文章大纲及目录

1.章节大纲

oneside和twoside,book类文档默认为twoside模式:双面打印模式,在这种模式下,默认新章节从奇数页码开始打印,所以会自动留白,
我们只需要在documentclass的选项中指定book为oneside的模式,就可以消除留白. 如下:

\documentclass[UTF8,a4paper,15pt,titlepage,oneside]{ctexbook}
%导言区
\documentclass{ctexbook} %ctexbook,ctexrep
%\usepackage{ctex}
%===设置标题的格式===
\ctexset{section = {%format用于设置章节标题全局格式,作用域为标题和编号%字号为小四,字体为黑体,左对齐%+号表示在原有格式下附加格式命令format+ = \zihao{-4} \heiti \raggedright,%name用于设置章节编号前后的词语%前、后词语用英文状态下,分开%如果没有前或后词语可以不填name = {,、},%number用于设置章节编号数字输出格式%输出section编号为中文number= \chinese{section},%beforeskip用于设置章节标题前的垂直间距%ex为当前字号下字母x的高度%基础高度为1.0ex,可以伸展到1.2ex,也可以收缩到0.8exbeforeskip = 1.0ex plus 0.2ex minus .2ex,%afterskip用于设置章节标题后的垂直间距afterskip = 1.0ex plus 0.2ex minus .2ex,%aftername用于控制编号和标题之间的格式%\hspace用于增加水平间距aftername= \hspace{0pt}},subsection = {format+ = \zihao{5} \heiti \raggedright,%name={\thesubsection、},name = {,、},number= \arabic{subsection},beforeskip = 1.0ex plus 0.2ex minus .2ex,afterskip = 1.0ex plus 0.2ex minus .2ex,aftername= \hspace{0pt}}
}%正文区 (文稿区)
\begin{document}\chapter{绪论}\section{研究的目的和意义}\section{国内外研究现状}\subsubsection{国外研究现状}\subsubsection{国内研究现状}\section{研究内容}\section{研究方法和技术路线}\subsubsection{研究内容}\subsubsection{技术路线}\chapter{实验结果与分析}\section{引言}近年来,随着逆向工程和三维重建工程的发展和应用,获取现实世界中物体的三维数据的方法越来越多。近年来,随着逆向工程和三维重建工程的发展和应用,\par获取现实世界中物体的三维数据的方法越来越多。\section{实验方法}\section{实验结果}\subsection{数据}\subsection{图表}\subsubsection{实验条件}\subsubsection{实验过程}\subsection{结果分析}\section{结论}\section{致谢}
\end{document}

2.章节大纲及目录
\documentclass{ctexbook}% 正文区
\begin{document}\tableofcontents % 生成目录\chapter{绪论} % 产生大纲\section{一级标题}\subsection{二级标题} % 注意此时\subsubsection{二级标题} 无效\chapter{实验结果分析} % 产生大纲\section{一级标题}\subsection{二级标题} \end{document}

3.文章目录
% 可以在导言区加入下面两行,实现去除页眉及标题左对齐
\pagestyle{plain}   % 去除页眉
\CTEXsetup[format={\Large\bfseries}]{section}  % 标题左对齐
%导言区
\documentclass{ctexart} %ctexbook,ctexrep%\usepackage{ctex}%===设置标题的格式===\ctexset{section = {%format用于设置章节标题全局格式,作用域为标题和编号%字号为小四,字体为黑体,左对齐%+号表示在原有格式下附加格式命令format+ = \zihao{-4} \heiti \raggedright,%name用于设置章节编号前后的词语%前、后词语用英文状态下,分开%如果没有前或后词语可以不填name = {,、},%number用于设置章节编号数字输出格式%输出section编号为中文number= \chinese{section},%beforeskip用于设置章节标题前的垂直间距%ex为当前字号下字母x的高度%基础高度为1.0ex,可以伸展到1.2ex,也可以收缩到0.8exbeforeskip = 1.0ex plus 0.2ex minus .2ex,%afterskip用于设置章节标题后的垂直间距afterskip = 1.0ex plus 0.2ex minus .2ex,%aftername用于控制编号和标题之间的格式%\hspace用于增加水平间距aftername= \hspace{0pt}},subsection = {format+ = \zihao{5} \heiti \raggedright,%name={\thesubsection、},name = {,、},number= \arabic{subsection},beforeskip = 1.0ex plus 0.2ex minus .2ex,afterskip = 1.0ex plus 0.2ex minus .2ex,aftername= \hspace{0pt}}
}%正文区 (文稿区)
\begin{document}\section{引言}近年来,随着逆向工程和三维重建工程的发展和应用,获取现实世界中物体的三维数据的方法越来越多。近年来,随着逆向工程和三维重建工程的发展和应用,\par获取现实世界中物体的三维数据的方法越来越多。\section{实验方法}\section{实验结果}\subsection{数据}\subsection{图表}\subsubsection{实验条件}\subsubsection{实验过程}\subsection{结果分析}\section{结论}\section{致谢}
\end{document}

5.LaTeX中特殊字符

5.1空格

%  导言区:
\usepackage{ctexbook} % 正文区
\begin{document}\section{空白符号}英文中 直接使用空格键生成空格(多个空格编译结果只有一个空格)中文中 直接使用空格后编译结果没有空格在中文中添加英文 中英文混排 此时在中文和英文之间会生成空格空行分段, 多个空行等同一个自动缩进,绝对不能使用空格代替汉字与其他字符的间距会自动由xelatex处理禁止使用中文全角空格\end{document}
空格方式 宽度
a \quad b 1em
a \qquad b 2em
a \, b 1/6em
a \thinspace b 1/6em
a \enspace b 0.5em
a \ b (\加空格) 空格
a~b 硬空格 (不能分割的空格)
a \kern 1pc b (或者a \kern -1em b) 生成指定宽度的空白(负值字母会换位)
a \hslip 1em b 生成指定宽度的空白(1pc = 12pt = 4.218mm)
a \ hspace{35pt} b 根据参数生成指定空白
a \hphantom {xyz} b 根据参数的占位宽度产生对应宽度空白
a \hfill b 产生弹性长度空白(充满整个空间)

LaTeX数学公式支持除上述空格以外,还支持如下空格:

空格方式 源代码 宽度
中等空格 $a \; b$ 2/7字符宽度
小空格 $a \, b$ 1/6字符宽度
紧贴 $a \! b$ 缩进1/6字符宽度

5.2 控制符

%  导言区:
\documentclass{ctexart}  % 正文区
\begin{document}\section{控制符}\# \$ \% \{ \} \~{} \_{} \^{}  \&  % 生成 # $ % { } ~ _ ^ &\textbackslash  %文本模式中产生反斜杠\, 因为双反斜杠\\是换行
\end{document}

5.3 排版符号

可查看 http://mohu.org/info/symbols/symbols.htm
1、指数和下标可以用^和_后加相应字符来实现。比如:


2、平方根(square root)的输入命令为:\sqrt,n 次方根相应地为: \sqrt[n]。方根符号的大小由LATEX自动加以调整。也可用\surd 仅给出符号。比如:

3、命令\overline 和\underline 在表达式的上、下方画出水平线。比如:

4、命令\overbrace 和\underbrace 在表达式的上、下方给出一水平的大括号。

5、向量(Vectors)通常用上方有小箭头(arrow symbols)的变量表示。这可由\vec 得到。另两个命令\overrightarrow 和\overleftarrow在定义从A 到B 的向量时非常有用。

6、分数(fraction)使用\frac{…}{…} 排版。一般来说,1/2 这种形式更受欢迎,因为对于少量的分式,它看起来更好些。

7、积分运算符(integral operator)用\int 来生成。求和运算符(sum operator)由\sum 生成。乘积运算符(product operator)由\prod 生成。上限和下限用^ 和_来生成,类似于上标和下标。

以下提供一些常用符号的表示方法


5.4 引号

%  导言区:
\usepackage{ctexbook} % 正文区
\begin{document}\section{引号}` `` % 数字键1旁边的`表示单引号中文的左单引号', 连续``表示左双引号' '' %  单引号键' 输出中文的右单引号, 连续'' 表示右单引号\end{document}

5.5 连字符 及非英文字符

%  导言区:
\documentclass{ctexart}  % 正文区
\begin{document}\section{连字符}- -- --- %生成短- 中-- 长 ---三种连字符\section{非英文字符}\oe \OE \ae \AE \aa \AA \o \O \l \L \ss \SS !` ?`
\end{document}

6.LaTeX中的插图

具体可以打开 texdoc graphicx 文档查看, 图片编号自动编排

6.1单张图片

若要让图片编号与章节关联,可以通过导入下面的包实现

% 导言区
\usepackage{amsmath}
\numberwithin{figure}{section}

%  导言区:
\usepackage{ctexart}
\usepackage{graphicx} % 需要导入宏包
\graphicspath{{figures/},{pics/}} % 图片在当前目录下的figures目录,或者也可以设置多个路径 pics目录
% 格式 EPS PDF PNG JPEG BMP% 正文区
\begin{document}%开始插入图片达尔文游戏---见图\ref{pic1}\begin{figure}[htbp] % 浮动体 htbp代表图片插入位置的设置\centering %图片居中% 添加图片;[]中为可选参数,scale缩放因子, height高度, width宽度,angle旋转角度% height=0.1 \textheitht版型文本高度的0.1倍的图像高度;% width=0.1\textwidth版型文本宽度的0.1倍的图像宽度,{}中为图片的相对位置\includegraphics[width=6cm]{image.jpg}\caption{达尔文游戏} % 图片标题 \label{pic1} % 图片标签\end{figure}
\end{document}

达尔文游戏—见图 1

解决图文不分离问题:

\usepackage{float}
\usepackage{graphicx}
\begin{figure}[H]
... figure contents ...
\end{figure}
% 使用float包,并设置[H]选项,强制图出现在文档中的固定位置(相对于文字)

6.2 多张图片

并排插入两张图片
方式1:图片编号增加1
两张图片公用一个大的图题,图片的编号只增加一个

\begin{figure}[ht]
\centering\subfigure[11-1]{               %小图题的名称
\includegraphics[width=4cm]{11-1}}\hspace{10pt}  %2张图片的水平距离\subfigure[11-2]{\includegraphics[width=4cm]{11-2}}\caption{两张图片公用的图题}\end{figure}

方式2:图片编号增加2
每张图片有自己的图题,这种方法会使LaTeX中图片的编号顺序向后增加。

\begin{figure}[htbp]\centering\begin{minipage}[t]{0.48\textwidth}\centering\includegraphics[width=6cm]{Multi-featured-tumors}\caption{World Map}\end{minipage}\begin{minipage}[t]{0.48\textwidth}\centering\includegraphics[width=6cm]{Multi-featured-tumors2}\caption{Concrete and Constructions}\end{minipage}
\end{figure}

6.3并排插入多张图片

\begin{figure}
\centering
{\includegraphics[width=2.5cm]{10-1}}
\hspace{10pt}    %每张图片水平距离
{\includegraphics[width=2.5cm]{10-2}}
\hspace{10pt}
{\includegraphics[width=2.5cm]{10-3}}
\hspace{10pt}
{\includegraphics[width=2.5cm]{10-4}}
\hspace{10pt}
\caption{并排插入4张图片}
\end{figure}

6.4 竖排插入多张图片

\begin{figure}[h]
\centering
\subfigure[场景1]{\begin{minipage}[t]{0.45\textwidth}
\centering
\includegraphics[width=0.8\textwidth]{wolf2} \\
\vspace{10pt} %2张图片的垂直距离
\includegraphics[width=0.8\textwidth]{wolf3}
\end{minipage}
\end{figure}
}

7.LaTeX中的表格

若要表格编号与章节关联,可以导入下面包

% 导言区
\usepackage{amsmath}
\numberwithin{table}{section}

7.1表格

在命令行窗口使用 texdoc booktab (三线表格) 打开相应的宏包文件
longtab 跨越长表格 ; tabu 综合表格

\documentclass{ctexart}  % 正文区
\begin{document}使用表 \ref{tab}所示表格 %实现对表格的交叉使用\begin{table}[htbp] % htbp代表表格浮动位置\centering % 表格居中\caption{变量表}\label{tab} % 添加表头 label为表格浮动体设置标签%l左对齐 c居中对齐 r右对齐 |产生竖线(|| 产生双竖线) p{1.2cm}产生指定宽度的表列,超出则自动换行\begin{tabular}{|l | c| r|} \hline % 产生表格横线 (\hline \hline 产生双横线)姓名 & 英文 & 数学 \\  % 各列用&分开 用\\结束本行,产生新行\hline张三 & 33 & 33 \\\hline里斯 & 76 & 28\\\hline\end{tabular}\end{table}
\end{document}

7.2 三线表

\begin{table}[]
\centering\caption{The caption of this table}
\begin{tabular}{lcccc}
\toprule& SVM & SMO & J48 & Random Forest \\\midrule
TP & 1   & 2   & 3   & 1             \\
FP & 1   & 2   & 3   & 1             \\
FN & 1   & 2   & 3   & 1            \\
\bottomrule
\end{tabular}
\label{}
\end{table}


线条宽度自定义: 可以通过简单的在\toprule,\bottomrule,\midrule 后面添加我们的参数。[XXmm],[XXpt]来进行设置

\documentclass{article}
%表格
\usepackage{booktabs}
\usepackage{threeparttable}%跨列或跨行 单元合并
\usepackage{multicol}
\usepackage{multirow}%为字体添加颜色
\usepackage{color}%多行注释
\usepackage{verbatim}\begin{document}\begin{comment}%多行注释h,此处(here) - 代码所在的上下文位置t,页顶(top) - 代码所在页面或之后页面的顶部b,页底(bottom) - 代码所在页面或之后页面的底部p,独立一页(page) - 浮动页面\end{comment}\begin{table}[htpb] %表格浮动体 htpb表示位置  依次尝试h,t,p,b \centering %表格居中\fontsize{10}{6}\selectfont    %10表示字体大小   6表示各行的间距\begin{threeparttable} %三线表\begin{tabular}{ccccc}  %每列都居中 有几列就有几个c\toprule         %顶部线%\multirow, \multicolumn可以对多行或列的单元格进行合并\multirow{2}{*}{\bf Truth}&\multicolumn{4}{c}{\bf Prediction}\cr %{\bf xx}加粗加黑  &每一行元素的分隔符 \cr换行符\cmidrule(lr){2-5}   %局部中线 横跨2-5列&Others&Angry&Sad&Happy\cr\midrule %中部线Others&4424&{\color{red} 101}&{\color{red} 60}&{\color{red} 92}\cr %{\color{red} xx} 为表格中的字体加颜色Angry&{\color{red} 54}&237&6&1\crSad&{\color{red} 44}&11&192&3\crHappy&{\color{red} 88}&0&2&194\cr\bottomrule %底部线\end{tabular}\end{threeparttable}\caption{A confusion matrix} %表格描述\label{tab:confusion_matrix} %表格标签 在正文中可以用 Table \ref{tab:confusion_matrix}引用%注意\label{} 要放在\caption{}之后,否则在正文中引用时,表的序号会是表格当前所在章节的序号。\end{table}
\end{document}

8.LaTeX中的浮动体

见 6,7
例如6中

\begin{figure}[htbp] % 浮动体 htbp代表图片插入位置的设置\end{figure}

[htbp]是个可选参数项,允许用户指定图片、表格等元素被放置的位置。这一可选参数项可以是下列字母的任意组合。

h(here): 当前位置;将图形放置在 正文文本中给出该图形环境的地方。如果本页所剩的页面不够, 这一参数将不起作用。
t(top): 顶部;将图形放置在页面的顶部。
b(bottom): 底部;将图形放置在页面的底部。
p(page): 浮动页;将图形放置在一只允许有浮动对象的页面上。

注意:在使用这些参数时:

如果在图形环境中没有给出上述任一参数,则缺省为 [tbp]。
给出参数的顺序不会影响到最后的结果。因为在考虑这些参数时LaTeX总是尝试以 h-t-b-p 的顺序来确定图形的位置。所以 [hb] 和 [bh] 都以h-b 的顺序来排版。
给出的参数越多,LaTeX的排版结果就会越好。[htbp], [tbp], [htp], [tp] 这些组合得到的效果不错,[h]也是常用的选择。

9.LaTeX中的数学公式

9.1数学公式初步

%  导言区:
%  导言区:
\documentclass{article}
\usepackage{ctex}
\usepackage{amsmath}%  正文区
\begin{document}\section{行内公式}\subsection{美元符号}$f(x)=3x^2+2+x-1$   % $里面为数学模式,在$外面为文本模式  单$为行内公式, $$为行间公式(单独一行居中)\subsection{小括号}\(a+b=b+a \)\subsection{math 环境}\begin{math}a+b=b+a \end{math}\section{上下标}\subsection{上标}$3x^2 -x +2 =0$$3x^{20} -x +2 =0$ %使用{}进行分组$3x^{3x^{20} -x +2 =0} -x +2 =0$\subsection{下标}$a_0, a_1, a_{100} a_{3x^{20} -x +2 =0}$\section{希腊字母}$\alpha^3 + \beta^2 + \gamma =0$具体见5.LaTeX中特殊字符的排版符号\section{数学函数}$\log$$\sin$$\cos$$\arcsin$进一步构成公式 $sin^2 x+ \cos^{2} x =1 $具体见5.LaTeX中特殊字符的排版符号\section{分式}大约是原体积的$3/4$大约是原体积的$\frac{3}{4}$具体见5.LaTeX中特殊字符的排版符号\section{行间公式}\subsection{美元符号}$$ f(x)=3x^2+2+x-1$$   % $里面为数学模式,在$外面为文本模式  单$为行内公式, $$为行间公式(单独一行居中)\subsection{中括号}\[a+b=b+a \]\subsection{displaymath 环境}\begin{displaymath}a+b=b+a \end{displaymath}\subsection{自动编号公式equation环境}\begin{equation}a+b=b+a %可以使用\label{标签}设置标签 在其他位置使用\ref{标签}引用,交叉引用 \end{equation}\subsection{不编号公式equation*环境}\begin{equation*} % 需要使用amsmath 宏包a+b=b+a %可以使用\label{标签}设置标签 在其他位置使用\ref{标签}引用,交叉引用\end{equation*}\end{document}


9.2数学公式矩阵

%  导言区:
\documentclass{article}
\usepackage{ctex}
\usepackage{amsmath} %编写矩阵需要引用该宏包
\newcommand{\adots}{\mathinner{\mkern2mu%\raisebox{0.1em}{.}\mkern2mu\raisebox{0.4em}{.}%\mkern2mu\raisebox{0.7em}{.}\mkern1mu}}%  正文区
\begin{document}% 矩阵环境 用&分隔列, 用\\分隔行% matrix环境 矩阵两端无矩阵符号\[\begin{matrix}0 & 1\\1 & 0\end{matrix}\]% pmatrix环境 %在矩阵两端加小括号\[\begin{pmatrix}0 & 1\\1 & 0\end{pmatrix} \]% bmatrix环境 %在矩阵两端加中括号\[\begin{bmatrix}0 & 1\\1 & 0\end{bmatrix}\]% Bmatrix环境 %在矩阵两端加大括号\[\begin{Bmatrix}0 & 1\\1 & 0\end{Bmatrix}\]% vmatrix环境 %在矩阵两端加单竖线\[\begin{vmatrix}0 & 1\\1 & 0\end{vmatrix}\]% Vmatrix环境 %在矩阵两端加双竖线\[ \begin{Vmatrix}0 & 1\\1 & 0\end{Vmatrix}\]% 可以使用上下标 常用省略号: \dots (横省略号) \vdots (竖省略号) % \ddots (主对角线\省略号) \adots (副对角线/省略号) \times (排版乘号X)%注意 \adots 本身不存在需要重新定义新命令\[A = \begin{pmatrix}a_{11}^2 & \dots   & a_{13}^2 \\& \ddots  & \vdots \\0          &         & a_{33}  \end{pmatrix}_{n \times n} % nxn矩阵\]% 分块矩阵(矩阵嵌套)\[\begin{pmatrix}\begin{matrix} 1&0\\0&1 \end{matrix} & \text{\large 0} \\ %\text 用于临时切换成文本模式\text{\large 0}                    & \begin{matrix} 1&0\\0&1 \end{matrix} \end{pmatrix}\]% 三角矩阵\[\begin{pmatrix}a_{11} & a_{12} & \cdots & a_{1n} \\& a_{22} & \cdots & a_{2n} \\&        & \ddots & \vdots  \\\multicolumn{2}{c}{\raisebox{1.3ex}[0pt]{\Huge 0}} &       &a_{nn}%  \multicolumn (合并多列) \raisebox(调整高度)\end{pmatrix}\]% 跨列省略号 \hdotsfor{<列数>}\[\begin{pmatrix}1   & \frac 12 & \dots & \frac 1n \\\hdotsfor{4} \\m  & \frac m2 & \dots & \frac mn \\% \frac 12 (分数1/2)\end{pmatrix}\]% 文本行内小矩阵 (smallmatrix)环境复数 $z = (x,y)$ 也可以用矩阵\begin{math}\left( % 需要手动加上左括号\begin{smallmatrix}x & -y \\ y & x\end{smallmatrix}\right) %需要手动加入右括号\end{math} 表示% \left \right 需要成对出现% array环境(类似表格环境tabular)\[\begin{array}{r|r}\frac12 & 0\\\hline % 产生横线0       & -\frac abc\\\end{array}\]%复杂矩阵排版可以使用多种嵌套%\underbrace {\rule{17mm}{0mm}}_m  产生下标大括号 \rule尺寸%用array环境构造复杂矩阵\[% @{<内容>}- 添加任意内容,不占表项计数。%此处添加一个负值空白,表示向左移-5pt的距离。\begin{array}{c@{\hspace{-5pt}}l}%第一行,第一列\left(\begin{array}{ccc|ccc}a & \cdots & a & b & \cdots & b \\& \ddots & \vdots & \vdots & \adots \\&       & a & b & \\\hline&       &   & c & \cdots & c \\&       &   & \vdots &   &  \vdots \\\multicolumn{3}{c|}{\raisebox{2ex}[0pt]{\Huge 0}}&  c    & \cdots & c\end{array}\right)%第一行,第二列\begin{array}{l}% \left.仅表示与\right\}配对,什么都不输出\left. \rule{0mm}{7mm} \right\} p \\\\\left. \rule{0mm}{7mm} \right\} q\end{array}\\ [-5pt]%第二行,第一列\begin{array}{cc}\underbrace{\rule{17mm}{0mm}}_m &\underbrace{\rule{17mm}{0mm}}_m\end{array}& %第二行,第二列\end{array}\]
\end{document}


9.3 数学多行公式

%  导言区:
\documentclass{article}
\usepackage[UTF8]{ctex}
\usepackage{amsmath}
\usepacksge{amssymb}%  正文区
%  导言区:
\documentclass{article}
\usepackage[UTF8]{ctex}
\usepackage{amsmath}
\usepackage{amssymb}%  正文区
\begin{document}% gather环境(可以使用\\换行)% 自动生成编号% 可以在\\前使用\notag 阻止编号\begin{gather}a + b = b + a \\ab +bc\end{gather}% gather环境(可以使用\\换行)% 不编号\begin{gather*}a + b = b + a \\3 \times 5 = 5 \times 3\end{gather*}% align 和align*环境 (使用&进行对齐)%带编号\begin{align}y &= t + \cos t + 1\\y &=2t\end{align}% 不编号\begin{align*}y &= t & x &=\cos t\\y &=2t & y &= \sin t\end{align*}%split 环境 (对齐采用align 环境的方式, 编号在中间(按照一个公式编号))\begin{equation}\begin{split}\cos 2x &= \cos^2 x - \sin^2 x \\&= 2\cos^2 x - 1\\&= 1 - 2\sin^2 x\end{split}\end{equation}% cases环境 分段函数% 每行公式中使用&分隔为两部分% 通常表示值和后面的条件 % 按照一个公式编号\begin{equation}D(x) = \begin{cases}1 & \text{如果} x \in \mathbb{Q} \\0 &  \text{如果} x \in \mathbb{R}\setminus\mathbb{Q}\end{cases}\end{equation}
\end{document}


若要取消公式自动编号,则在公式后面添加下面命令

\nonumber

10.LaTeX中的参考文献

10.1 参考文献bibitem (一次使用一次管理)

%导言区
\documentclass{ctexart}%正文区(文稿区)
%一次管理,一次使用
%参考文献格式:
%\begin{thebibliography}{编号样本}
%   \bibitem[记号]{引用标志}文献条目1
%   \bibitem[记号]{引用标志}文献条目2
%   ...
% \end{thebibliography}
%其中文献条目包括:作者,题目,出版社,年代,版本,页码等。
%引用的时候要可以采用:\cite{引用标志1,引用标志2,...}\begin{document}引用一篇文章 \cite{article1}   引用一本书 \cite{book1} 等等\begin{thebibliography}{99}\bibitem{article1}陈立辉,孙伟,蔡川,陈晓云, \emph{基于LaTeX的Web数学公式提取方法研究}[J].计算机科学.2014(06)\bibitem{book1}William H.Press,Saul A. Teukolsky,William T. Vetterling ,Brian P. Flannery,\emph{Numerical Recipes 3rd Edition :The Art of Scientific Computing }Cambridge University Press ,New York ,2007.\bibitem{latexGuide}Kopka Helmut,W.Daly Patrick,\emph{Guide to \LaTeX}, $ 4^{th} $ Edition.Available at \texttt{https://www.amazon.com}\bibitem{latexMath} Graetzer George, \emph{Math Into \LaTeX},BirkhA user Boston; 3 ediotion (June 22,2000).\end{thebibliography}
\end{document}

10.2参考文献BibTex (一次管理 多次使用)

更多细节可参考其宏包文档

  1. 设置TeXstudio->构建->默认文献工具: BibTeX
  2. 创造新文件保存为后缀名为.bib,在该文件中编写参考文献的详细信息
    参考文献编辑:
    方式一: 可以使用google, 搜索bibtex, 点击引用链接, 打开后下方有一个BibTex链接, 点击打开, 可以得到该文献BibTex格式数据, 直接copy到参考文献数据库中
    方式二: 知网检索中导入数据, 使用安装有zotero的火狐浏览器, 打开zotero网站->Download Now ->下载firefox Extension 扩展包(工具栏会添加有相应zotero工具按钮->打开知网搜索->点击zotero按钮->勾选需要导入的参考文献条目->打开zotero操作面板, 选择需要导出的文献条目->鼠标右键, 点击导出条目->选择BibTeX格式->可以指定路径及文件名, 后缀.bib->将文件copy到当前路径
% @Book书籍参考文献
@book{mittelbach2004,   % 引用标志author = {Peter Babington}, title = {The title of the work},publisher = {The name of the publisher},year = 1993,volume = 4,series = 10,address = {The address},edition = 3,month = 7,note = {An optional note},isbn = {3257227892}
}
  1. 引用
    修改后注意清理过程文件
%  导言区:
\documentclass{article}
\bibliographystyle{plain} % 指定参考文献的排版样式%  正文区
\begin{document}这是一个参考文献的引用: \cite{mittelbach2004}\bocite{*} % *排版所有文献,包括未引用的\bibliography{test,cnki} %指定参考文献数据库文件,可以不带扩展名.bib, 不同数据库用,分隔; 不出现未引用的文献\end{document}

10.3 参考文献BibLaTeX (一次管理 多次使用)

  1. 设置TeXstudio->构建->默认文献工具: Biber
  2. 创造新文件保存为后缀名为.bib,在该文件中编写参考文献的详细信息
  3. 引用
    修改后注意清理过程文件
%  导言区:
\documentclass{article}
\usepackage[style=numeric, backend=biber]{biblatex} %引入biblatex宏包,style样式,backend后端程序
\addbibresource{text.bib}  % 添加参考文献数据库,不可以省略其扩展名.bib%  正文区
\begin{document}无格式化引用 \cite{biblatex}带方括号的引用 \parencite{a1-1}上标引用 \supercite{6-1}\nocite{*}  % *列出未引用的全部文献, 也可以指定\printbibliography[title={参考文献}]  %输出参考文献列表,标题默认为英文, 可使用title修改为中文参考文献\end{document}

推荐样式文件 https://gitlab.com/CasperVector/biblatex-caspervector
打开主页->下载压缩包并解压->打开文件中tex->将全部文件copy到当前工作目录
按拼音排序参数修改: 设置TeXstudio->命令->Biber->修改成biber.exe -1 zh__pinyin%
按笔画排序 -1 zh__stroke

%  导言区:
\documentclass{article}
\usepackage[style=caspervector, backend=biber, utf8, sorting=centy]{biblatex} % 排序方式sorting中 c中文 e英文 n作者姓名 t文献标题 y出版年份
\addbibresource{text.bib}  % 添加参考文献数据库,不可以省略其扩展名.bib%  正文区
\begin{document}无格式化引用 \cite{biblatex}带方括号的引用 \parencite{a1-1}上标引用 \supercite{6-1}\nocite{*}  % *列出未引用的全部文献, 也可以指定\printbibliography[title={参考文献}]  %输出参考文献列表,标题默认为英文, 可使用title修改为中文参考文献\end{document}

另外可以使用bat批处理文件执行对应编译操作

  1. 打开当前路径, 确保存在.bib数据库文件 .tex源文件 .cbx .bbx 等参考文献样式文件
  2. 建立一个新文件,将其后缀改成.bat, 编辑以下内容到该文件
xelatex latexRedBibLaTeX
biber -1 zh__phinyin latexRedBibLaTeX
xelatex latexRedBibLaTeX
xelatex latexRedBibLaTeX
del *.aux *.bbl *.bcf *.blg *.log *.xml
  1. 执行该文件,可以查看最终编译结果

11.LaTeX中的自定义命令和环境

%  导言区:
\documentclass{article}
% \newcommand 定义命令
% 命令只能由字母组成, 不能以\end开头
% \newcommand<命令>[<参数个数>][<首参数默认值>]{<具体定义>}
% 只能为第一个参数指定默认值(使用中括号)
\newcommand\loves[3][喜欢]{#2 #1#3 }%\renewcommand 重定义命令 与\newcommand 作用和用法相同,但只能用于也有命令
%\renewcommand 与\newcommand 可以定义和重定义环境%  正文区
\begin{document}\loves{猫}{鱼} %编译结果  猫喜欢鱼\loves{最爱}{猫}{鱼} %编译结果  猫最爱鱼
\end{document}

11.LaTeX常见问题

取消段落自动缩进

全局取消

\setlength{\parindent}{0pt}

单段取消

\noindent

换页

\clearpage

页眉跟页脚

\pagestyle{empty }
% empty 没有页眉页脚;
% plain 没有页眉,页脚是居中的页码;
% heading 没有页脚,页眉是章节名称的页码;
% myheading 没有页脚,页眉是页码和用户自定义的内容。

使用 \pagestyle{} 设置整体页面风格,也可以用 \thispagestyle{} 单独设置当前页的风格。book 类默认使用 heading 风格,report 和 article 默认使用 plain 风格,中文的几个 ctex 文档类则都默认使用 heading 风格。
详细可参考 https://blog.csdn.net/xovee/article/details/119647249

自定义页眉与页脚
使用fancyhdr包来进行页眉页脚的设置:
注意:

  1. 命令\geometry{}必须放在\pagestyle{fancy}之前
  2. 首页\maketitle后需要加上\thispagestyle{fancy}
\usepackage{fancyhdr} %导入包
\pagestyle{fancy} %指定pagestyle%clears the header and footer,
%otherwise the elements of the
%default "plain" page style will appear.
\fancyhf{} 

可以设置页眉页脚各自左中右共6个位置的内容

\lhead{}
\chead{}
\rhead{}
\cfoot{\thepage}
\rfoot{}
\lfoot{}

关于页码的显示:\thepage
若要用到总页数,则需要导入包lastpage

\usepackage{lastpage}
此时可以设置页码为如x/x的格式:
\cfoot{\thepage / \pageref{LastPage}}

若要设置页眉页脚线宽,使用如下命令:

\renewcommand{\headrulewidth}{0.1mm}
\renewcommand{\footrulewidth}{0.1mm}
% 设为0时,不显示相应的线

页边距

\documentclass[a4paper,12pt]{ctexart}  % 页布局为a4纸
\usepackage{geometry}  % 导入该宏包
\geometry{left=2cm,right=2cm,top=2.5cm,bottom=25mm}

条目 列举编号 描述

LaTeX中三种列举的形式:itemize和enumerate还有description。

  1. itemize 分条目
\begin{itemize}
\item[*] a
\item[*] b
\end{itemize}

编译结果为:

  • a
  • b

item的方括号里的内容是为定制前面的符号,可以不要(连同括号),那么前面的符号就是默认的黑点,也可以换为其他的符号,如-,+,等
2. enumerate 编号

\begin{enumerate}[1)]
\item a
\item b
\end{enumerate}

这样出来的形式为:
1) a
2) b
方括号里的内容是定制前面的编号的形式,可以不加,默认就是简单的数字,也可以换成[step 1],[(i)]等,LaTeX可以自动识别。但是要注意,使用了方括号,必须在前面加\usepackage{enumerate}.
3. description 描述

\begin{description}
\item[item a] a
\item[item b] b
\end{description}

编译出来的形式为:
item a a
item b b
方括号的词会作为一个描述出现在item的前面。

消除itemize环境中item间空行

\usepackage{enumitem}% http://ctan.org/pkg/enumitem
\setlist[itemize]{noitemsep, topsep=0pt}% 宏包enumitem,消除itemize环境中item间空行

让三级标题不在目录上显示

在导言区使用以下代码
\setcounter{tocdepth}{2}

多个tex文件汇总主文件

在导言区使用以下代码
\usepackage{docmute} % 用于在编译主文件时去除所有子文件代码的引言部分\begin{document}\input{logisticRegression.tex}
\end{document}

修改章节标题格式

\ctexset{section = {    format={\centering\Large\bfseries},name={第,章}}}
% 其他级标题类似,修改其他参数另查

只显示一、二级标题

\setcounter{tocdepth}{2} % 只显示一、二级标题

多行公式跨页显示

\allowdisplaybreaks[4] % 多行公式跨页显示

配置父文件夹、图片库

\graphicspath{{machine-learning/}} % 配置父文件夹
\graphicspath{{Image/}} % 图片库
\numberwithin{figure}{section} % 图像编号关联所在章节编号

三线表宏包

\usepackage{booktabs} % 三线表宏包
\usepackage{booktabs,colortbl}
\begin{document}\begin{table}[h!]\centering\small\begin{tabular}{p{60pt}<{\centering}|p{60pt}    <{\centering}p{180pt}<{\raggedright}}\hline\headcol 序号 & 符号 & 符号说明 \\\hline1 & $\nu$ & 行车速度(km/h) \\2 & t$_{\min}$ & 车头最小时距(s) \\3 & $J_{\rm a}$ & 车头最小间隔(m) \\4 & $J_{\rm z}$ & 车辆平均长度(m) \\5 & $J_{\gamma}$ & 车辆的制动距离(m) \\6 & $J_{\max}$ & 司机在反应时间内车辆行驶的距离(m) \\7 & $A_{\max}$ & 最大交通量 \\8 & $\alpha_{1}$ & 车道数修正系数 \\9 & $\alpha_{2}$ & 车道宽度和侧向净宽修正系数 \\10 & $\alpha_{3}$ & 大型车修正系数 \\11 & $\alpha_{4}$ & 驾驶员技术水平修正系数 \\12 & $K_{j}$ & 阻塞密度 \\13 & $\nu_{f}$ & 自由车速 \\$\cdots$ & $\cdots$\\\hline\end{tabular}%\caption{符号与说明}\label{symbol}\end{table}
\end{document}

\usepackage{booktabs,colortbl}
\begin{document}\begin{table*}[h!]\centering\small\tabcolsep 2.5pt\caption{主次道路参数表}\begin{tabular*}{0.8\linewidth}{p{60pt}<{\centering}p{60pt}<{\centering}p{60pt}<{\centering}p{80pt}<{\centering}p{80pt}<{\centering}}\toprule道路类型  &  主干路  &  支干路  &  小区内宽道路  &  小区内窄道路  \\\midrule行车速度  & 50 km / h & 40 km / h & 30 km / h & 20 km / h \\车道数  & 4 & 3 & 2 & 1 \\\bottomrule\end{tabular*}\label{tab10}\end{table*}
\end{document}

\usepackage{booktabs,colortbl}
\begin{document}\begin{table*}[h!]\centering\small\tabcolsep 2pt\caption{我国服务水平划分标准}
\begin{tabular*}{0.87\linewidth}{p{60pt}<{\centering}p{40pt}<{\centering}
p{40pt}<{\centering}p{40pt}<{\centering}p{40pt}<{\centering}
p{80pt}<{\centering}p{40pt}<{\centering}}
\toprule
服务水平 (L0S)  & \multicolumn{2}{c} {一级 } & 二级  & 三级  & \multicolumn{2}{c} {四级 } \\
\cline{2-3}\cline{6-7}
服务交通量  & 800 & 1200 & 1800 & 2500 & $A_{D}$ & $\leqslant A_{P}$ \\速度  km / h & 120 & 120 & 120 & 120 & $\geqslant V_{p}$ & $\leqslant V_{p}$ \\V / C & 0.33 & 0.48 & 0.71 & 1.0 & $A_{p} / A_{\max}\leqslant 1.0$ & -(无意义 ) \\
\bottomrule\end{tabular*}
\end{table*}
\end{document}

表格应具有三线表格式,因此常用 booktabs宏包,其标准格式如\cref{tab:001}~所示。
\begin{table}[!htbp]\caption{标准三线表格}\label{tab:001} \centering\begin{tabular}{ccccc}\toprule[1.5pt]$D$(in) & $P_u$(lbs) & $u_u$(in) & $\beta$ & $G_f$(psi.in)\\\midrule[1pt]5 & 269.8 & 0.000674 & 1.79 & 0.04089\\10 & 421.0 & 0.001035 & 3.59 & 0.04089\\20 & 640.2 & 0.001565 & 7.18 & 0.04089\\\bottomrule[1.5pt]\end{tabular}
\end{table}

\begin{table}[h]%htbp表示的意思是latex会尽量满足排在前面的浮动格式,就是h-t-b-p这个顺序,让排版的效果尽量好。\centering\begin{tabular}{p{2.0cm}<{\centering}p{9.0cm}<{\centering}p{2.0cm}<{\centering}}%指定单元格宽度, 并且水平居中。\hline符号 & 说明 & 单位 \\ %换行 \hline$\int$ & 积分符号 &  \\ %把你的符号写在这$W_0$ & 区分高峰和低峰的一个临界值 &  \\ %把你的符号写在这$M_t$ &  简单移动平均项 &  \\ %把你的符号写在这\hline\end{tabular}
\end{table}

附录

\begin{table}[htbp]\centering\begin{tabular}{|p{14.0cm}|}%指定单元格宽度, 并且水平居中。\hline\textbf{附录1} \\ %换行 \hline介绍:支撑材料的文件列表  \\ \\\\\\\hline\end{tabular}
\end{table}\begin{table}[htbp]\centering\begin{tabular}{|p{14.0cm}|}%指定单元格宽度, 并且水平居中。\hline\textbf{附录2} \\ %换行 \hline介绍:该代码是某某语言编写的,作用是什么   \\ \\\\\\\hline\end{tabular}
\end{table}

文献引用

% 放在正文区
\begin{thebibliography}{99}
\addcontentsline{toc}{section}{参考文献}
\bibitem{1} 李向鹏. 城市交通拥堵对策——封闭型小区交通开放研究~[D]. 交通运输工程,
2014.4.
\bibitem{2} 司守奎等. 数学建模算法与应用~[M]. 北京:国防工业出版社,2011.8 第一版;
\bibitem{3} 吕彬. 城市居住区“开放性”模式研究~[D]. 建筑设计,2006.6.
\bibitem{4} 茹红蕾. 城市道路通行能力的影响因素研究~[D]. 交通运输工程,2008.3.
\bibitem{5} VISSIM 软件路网搭建教程.
\url{http://wenku. baidu.com/view/7bc33214680203d8ce2f24c4.html}
\bibitem{6} 赵琳,邵长桥. 基于~VISSIM 的高速公路基本路段实际通行能力仿真分析~[J]. 道
路交通与安全,2007.2.
\bibitem{7} 李冬梅,李文权. 道路通行能力的计算方法 [J]. 河南大学学报,2002.6:24-27.
\bibitem{8} 城市轨道施工安全及交通组织 [S].2014.
\bibitem{9} 李鑫, 李雪等. 城市道路网络脆弱性评估指标研究综述~[J]. 公路交通科技,
2016.1:155-157.
\bibitem{10} 詹斌, 蔡瑞东等. 基于城市道路网络脆弱性的小区开放策略研究 [J]. 技术方法,
2016.7:98-101.
\bibitem{11} 彭驰. 物流园区交通影响分析研究~[D]. 交通运输工程,2007, 4.
\end{thebibliography}

指定章节等的初始值

 \setcounter{section}{+8}% 其他subsection等同理

去除目录页的页码页眉等

% 在目录生成命令后加入即可。
\thispagestyle{empty}

表格:控制前后距离、合并单元格、控制单元格宽度、字体带下划线

先要引入以下宏包

\usepackage{multirow} %合并表格行
\usepackage{makecell} %表格P居中对齐

合并行单元格使用: \multirow{合并的行数}{*}{次数}
合并列单元格使用:\multicolumn{列数}{c|}{D}
合并行单元格后,合并的行内不要横线,其余单元格横线:
使用\cline{2-7}替代 \hline
单元格自定义宽度:p{3em}<{\centering}其中使用\centering居中要引入上面的宏包
字体带下划线且定义下划线宽度:\underline{\makebox[4em][c]{1mm}}(单位:$cm$)
控制整个表的宽度使用:\setlength{\tabcolsep}{12.2mm}

 \setlength{\tabcolsep}{12.2mm}{\begin{tabular}{|c|c|c|c|}\end{tabular}}

例子:

\begin{table}[H] \setlength{\abovecaptionskip}{0cm}  %段前\setlength{\belowcaptionskip}{0.5cm} %段后\centering % 表格居中\caption{以螺旋测微器测玻璃球的数据\qquad 最小分度值:\underline{\makebox[4em][c]{1mm}} (单位:$cm$)}\label{T-2}\setlength{\tabcolsep}{12.2mm}{\begin{tabular}{|c|c|c|c|}\hline\multirow{2}{*}{次数} & \multicolumn{3}{c|}{玻璃球直径$D$}  \\\cline{2-4}&  读数 & 校正值 & 测定值 \\\hline1 &  &  &   \\\hline2 &  &  &   \\\hline3 &  &  &   \\\hline4 &  &  &   \\\hline5 &  &  &   \\\hline6 &  &  &   \\\hline平均值 & \multicolumn{3}{c|}{$ \bar D$=}    \\\hline\end{tabular}}
\end{table}


合并行列:\multicolumn{6}{|c|}{\multirow{2}{*}{匀减速}} ,第二行采用\multicolumn{6}{|c|}{~}占位,直接使用~会出先多余的竖线

% \usepackage{multirow} %合并表格行
% \usepackage{makecell} %表格P居中对齐
% \usepackage{makecell} %表格换行\begin{table}[H] \setlength{\abovecaptionskip}{0cm}  %段前\setlength{\belowcaptionskip}{0.5cm} %段后\centering % 表格居中\caption{实验台转动惯量测量数据记录表 }\label{3-2-1}
\scriptsize   \begin{tabular}{|p{4em}<{\centering}|p{3em}<{\centering}|p{3em}<{\centering}|p{3em}<{\centering}|p{3em}<{\centering}|p{3em}<{\centering}|p{4em}<{\centering}|p{3em}<{\centering}|p{3em}<{\centering}|p{3em}<{\centering}|p{3em}<{\centering}|p{3em}<{\centering}|}\hline\multicolumn{6}{|c|}{\multirow{2}{*}{匀减速}} & \multicolumn{6}{|c|}{\multirow{2}{*}{匀加速\qquad $R_\text{塔伦}=25mm$\qquad$m_\text{砝码}=53.4g$}}  \\\multicolumn{6}{|c|}{~}&\multicolumn{6}{|c|}{~}\\\hline$k$&1 & 2& 3& 4& \multirow{4}{*}{\makecell[c]{$\beta_1$\\平\\均}}& $k$& 1& 2&3 & 4&\multirow{4}{*}{\makecell[c]{$\beta_2$\\平\\均}}\\\cline{1-5}\cline{7-11}$t(s)$& 0.4598& 0.9213& 1.3856&1.8516 & & $t(s)$& 0.6618&1.1694 &1.5992 &1.9776 &\\\cline{1-5}\cline{7-11}$k$& 5& 6& 7& 8& &    $k$& 5& 6& 7& 8&\\\cline{1-5}\cline{7-11}$t(s)$&2.3204 & 2.7908&3.2642 &3.7392 & &  $t(s)$&2.3205 & 2.6358& 2.9302&3.2103 &\\\hline\makecell[c]{    $\beta_1(1/s^2)$}&\makecell[c]{-0.0677} &\makecell[c]{{-0.0703}} & \makecell[c]{-0.0691}& \makecell[c]{-0.0692}& \makecell[c]{-0.0690}& \makecell[c]{   $\beta_2(1/s^2)$} & \makecell[c]{\ 2.4383}& \makecell[c]{\ 2.4255}& \makecell[c]{\ 2.4216}&\makecell[c]{\ 2.3922} &\makecell[c]{\ 2.4194}\\\hline\multicolumn{3}{|c|}{$J_1(kgm^2)$} & \multicolumn{9}{|c|}{ }\\ \hline\end{tabular}
\end{table}

定义个人信息栏

\begin{table}[H]\centering\begin{tabular}{llll}\multicolumn{4}{c}{{\bf \zihao{3} 附:实验报告}}\\[2em]&\makebox[3em][s]{专业:}  \underline{\makebox[10em][l]{数据科学与大数据技术}} &\makebox[3em][s]{年级:} \underline{\makebox[6em][l]{2021级}} &\makebox[5em][s]{完成日期:}  \underline{\makebox[6em][l]{ 2022.09.09} }\\[0.5em]      &\makebox[3em][s]{学号:} \underline{\makebox[10em][l]{ 2120220087}}         &\makebox[3em][s]{姓名:}\underline{\makebox[6em][l]{ 庄汐}}    &\makebox[5em][s]{成    绩:} \underline{\makebox[6em][l]{}}  \end{tabular}
\end{table}

在tex里面插入外部PDF自定义封面

\usepackage{pdfpages} %将PDF文件加入到封面位置\begin{titlepage}    \includepdf[pages={1}]{cover.pdf} %外界自建封面,调用
\end{titlepage}

给PDF添加水印

\usepackage{draftwatermark}         % 所有页加水印
%\usepackage[firstpage]{draftwatermark} % 只有第一页加水印
\SetWatermarkText{庄汐 111111}           % 设置水印内容
%\SetWatermarkText{\includegraphics{fig/texlion.png}}         % 设置水印logo
\SetWatermarkLightness{0.9}             % 设置水印透明度 0-1
\SetWatermarkScale{0.5}                   % 设置水印大小 0-1  

图片与文字并排

1.使用minipage的方式混排图片和文字,达到图片在右侧,文字在左侧的效果
注意minipage可以当做一个page来使用,它独立成为一个单元,里面可以添加figure, tabular, equation, text等资源。

\begin{minipage}[b]{0.65\linewidth}
some text
\end{minipage}
\hfill
\begin{minipage}[b]{0.35\linewidth}
\includegraphics[height=8\baselineskip]{grafics}
\end{minipage}

等同于创建两个横向排列的minipage,各占线宽0.65和0.35.
左边一个minipage中有文字some text, 右边一个minipage是一张图片

2.使用wrapfig实现并排

% \usepackage{wrapfig}
\begin{wrapfigure}[16]{r}{6cm} % 纵向8行,图片靠右,宽度12.5em\begin{center}\includegraphics[width=6cm,height=10cm]{210016.png}\caption{}\label{fig:01.31}\end{center}
\end{wrapfigure}
智能计时计数器可测量时间、速度、加速度等多种物理量。在本实验中利用单电门、多
脉冲测量时间。 \par
插电开机后显示“智能计数计时器 成都世纪中科”画面延时一段时间后,显示操作
界面:上行为测试模式名称和序号,例:“1 计时 ”表示按模式选择/查询下翻按钮选择
测试模式。下行为测试项目名称和序号,例:“1-1 单电门 ”表示项目选择/查询上翻
按钮选择测试项目。\par
选择好测试项目后,按确定键,LCD 将显示“选 A 通道测量 ” ,然后通过按模式
选择/查询下翻按钮和项目选择/查询上翻按钮进 A 或 B 通道的选择,选择好后再次按下确认
键即可开始测量。一般测量过程中将显示“测量中*****”,测量完成后自动显示测量值,若
该项目有几组数据,可按查询下翻按钮或查询上翻按钮进行查询,再次按下确定键退回到项
目选择界面。如未测量完成就按下确定键,则测量停止,将根据已测量到的内容进行显示,
再次按下确定键将退回到测量项目选择界面

Wrapfig 宏包提供了一个 wrapfigure 环境30.1来排版窄小的图形,使得 该图形位于文本的一边,并使文本在其边上折行。
用法:
\begin{wrapfigure}{行数}{位置}{超出长度}{宽度}<图形>\end{wrapfigure}
1.行数
是指图形高度所占的文本行的数目,如果不给出此选项, wrapfig 会自动计算。
2.位置
是指图形相对于文本的位置,须给定下面四项的一个。
r,R 表示图形位于文本的左边。
l,L 表示图形位于文本的右边。
i,R 表示图形位于页面靠里的一边(用在双面格式里)。
o,O 表示图形位于页面靠外的一边。
3.超出长度
是指图形超出文本边界的长度,缺省为 0pt。
4.宽度
指图形的宽度。 wrapfig 会自动计算 图形的高度。不过,我们也可设定图形的高度,具体可见 wrapfig.sty 内 的说明。
注意事项

在 wrapfigure 后必须紧接着输入段落文字,否则会出错。
不能在任何列表环境中使用 wrapfigure,也不能在 列表环境前后使用,除非两者之间有一空行或分段指令 \par。
如果将 wrapfigure 放在 \parbox 或小页环境 等分组中,文本折行必须在这些分组前结束。
在双栏页版式中不能使用 wrapfigure。
如果在 wrapfigure 中使用 figure 等 浮动对象,它的编号有可能不正确。
如果在 wrapfigure 中使用 table 等浮动对象, 它上下方的横线可能被忽略,必须自己再加入。
在折行的文本中, \linewidth 并没有改变。
wrapfig 还可用来放大段落的第一个字。

字体下标在文字正下方

数学模式下提供了\limits命令,形如expr1\limits_{expr2}^{expr3}
中expr2会出现在expr1的正下方,而expr3会出现在expr1的正上方,例如命令

$\sum\limits_{i=0}^n {x_i}$


但是\limits命令要求expr1必须的数学符号,否则会报错:
解决方法是用\mathop{expr1}命令将expr1转化成数学符号,写成\mathop{expr1}\limits_{expr2}^{expr3}
例如命令

$f_3(d) = \mathop{max}\limits_{x_3}(2x_3 + f_4(d-x_3))$

插入python代码

第一种使用listings

\usepackage{listings}
\usepackage{ctex}
\usepackage{xcolor}
% 用来设置附录中代码的样式\lstset{basicstyle          =   \sffamily,          % 基本代码风格keywordstyle        =   \bfseries,          % 关键字风格commentstyle        =   \rmfamily\itshape,  % 注释的风格,斜体stringstyle         =   \ttfamily,  % 字符串风格flexiblecolumns,                numbers             =   left,   % 行号的位置在左边showspaces          =   false,  % 是否显示空格,显示了有点乱,所以不现实了numberstyle         =   \zihao{-5}\ttfamily,    % 行号的样式,小五号,tt等宽字体showstringspaces    =   false,captionpos          =   t,      % 这段代码的名字所呈现的位置,t指的是top上面frame               =   lrtb,   % 显示边框
}\lstdefinestyle{Python}{language        =   Python, % 语言选Pythonbasicstyle      =   \zihao{-5}\ttfamily,numberstyle     =   \zihao{-5}\ttfamily,keywordstyle    =   \color{blue},keywordstyle    =   [2] \color{teal},stringstyle     =   \color{magenta},commentstyle    =   \color{red}\ttfamily,breaklines      =   true,   % 自动换行,建议不要写太长的行columns         =   fixed,  % 如果不加这一句,字间距就不固定,很丑,必须加basewidth       =   0.5em,
}
 %正文区\lstinputlisting[style       =   Python,caption     =   {\bf LVQ.py},label       =   {LVQ.py}]{../LVQ.py}

第二种使用:Highlight – 代码高亮html输出软件
Highlight是一款能够输出html高亮代码的软件。
支持159种程序语言,具体请看:http://www.andre-simon.de/doku/highlight/en/langs.html
内置多种高亮主题,
官方下载页面:http://www.andre-simon.de/zip/download.html

第三种 https://andy123t.github.io/2020/06/11/LaTeX-CodeStyle/

实例1:

\usepackage{listings}
\lstset{breaklines,                          % 自动将长的代码行换行排版columns=fixed,       numbers=left,                            % 在左侧显示行号numberstyle=\tiny\color{gray},           % 设定行号格式escapeinside=``,                        %逃逸字符(1左面的键),用于显示中文  frame=none,                            % 不显示背景边框backgroundcolor=\color[RGB]{245,245,244}, % 设定背景颜色keywordstyle=\color[RGB]{40,40,255},     % 设定关键字颜色numberstyle=\footnotesize\color{darkgray},   commentstyle=\it\color[RGB]{0,96,96},    % 设置代码注释的格式stringstyle=\rmfamily\slshape\color[RGB]{128,0,0},%设置字符串格式showstringspaces=false,               % 不显示字符串中的空格 tabsize=4,                                %设置tab空格数language=c,                               % 设置语言
}
\begin{lstlisting}        int seekBookSeat(SqList L) {//查找位置图书信息int seat;printf("请输入需要查询书籍的位置:");scanf("%d", &seat);if (seat < 1 || seat > L.length)return ERROR;for (int i = 0; i < L.length; i++) {if ((i + 1) == seat) {printf("\n位置为%d的书籍信息如下:\n", seat);color(2);//绿色字体printf("ISBN:%-20s书名:%-20s价格:%.2lf!\n", L.elem[i].id, L.elem[i].name, L.elem[i].price);color(0xF);//白色字体backtrack();}}color(0xc);printf("\n【错误】无相关书籍信息!\n");color(0xF);//白色字体backtrack();return OK;
}\end{lstlisting}


实例2

\documentclass{ctex}
\usepackage{listings}
\usepackage{xcolor}      %代码着色宏包\lstset{basicstyle=\tt,%行号numbers=left,rulesepcolor=\color{red!20!green!20!blue!20},escapeinside=``,xleftmargin=2em,xrightmargin=2em, aboveskip=1em,%背景框framexleftmargin=1.5mm,frame=shadowbox,%背景色backgroundcolor=\color[RGB]{245,245,244},%样式keywordstyle=\color{blue}\bfseries,identifierstyle=\bf,numberstyle=\color[RGB]{0,192,192},commentstyle=\it\color[RGB]{96,96,96},stringstyle=\rmfamily\slshape\color[RGB]{128,0,0},%显示空格showstringspaces=false
}\begin{document}
\lstset{language=C}
\begin{lstlisting}        %插入要显示的代码
#include <stdio.h>
int main(int argc, char ** argv)
{/*`打印`Hello,world*/printf("Hello, world!\n");return 0;
}\end{lstlisting}
\end{document}

LaTeX的语法问题及写作模板汇总相关推荐

  1. markdown写作模板

    markdown写作模板 标题 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一个表格 设定内容居中. ...

  2. LaTeX 进阶语法

    文章目录 LaTeX进阶语法 一. 样式排版 1. 字体和字号 1.1 字体样式 1.2 字号 1.3 ctex宏包更改中文字体 1.4 文字装饰 2. 段落格式和间距 2.1 长度和长度变量 2.2 ...

  3. matlab tex语法,latex基本语法

    LaTex基本语法 1.LaTeX文件的框架如下: \documentclass{article} \begin{document} This is the body of the article \ ...

  4. LaTeX 常用语法格式总结 列表计数、图、公式、表格、参考文献环境

    LaTeX 常用语法格式总结 文章目录 LaTeX 常用语法格式总结 列表与计数 列表 **enumerate**与**itemize**默认结构 **enumerate**与**itemize**自 ...

  5. LaTeX 入门-语法

    LaTeX 入门 - 语法 一.使用 LaTeX 优点 这里首先说明,并不是因为 Word 排版不好才使用 LaTeX.之所以 Word 排版不美观,很大一部分是因为上手太简单,很少有人在使用 Wor ...

  6. TOEFL 托福综合写作模板【高级版+低级版】

    高级版 低级版 高级版 In the lecture, the professor points out that ....听力中心思想...                        [1]ca ...

  7. 【latex】3 会议期刊论文模板的使用方法(包括矢量图片处理方法)

    latex 学习笔记> [latex]1 环境安装与快速上手 [latex]2 使用Aurora与在word中编写伪代码 [latex]3 会议期刊论文模板的使用方法 [latex]4 写作时使 ...

  8. 投稿攻略——如何写出一封合格的投稿信? (附投稿信写作模板)

    在投稿时,通常需要附上一封投稿信(Cover Letter)来向期刊编辑强调研究的创新性以及重要程度.一封优秀的投稿信应该全面的阐述出研究为什么适合在该期刊上发表,以及该研究吸引读者的闪光点在何处. ...

  9. latex c语言字体,LaTex基本语法-和word对应的字体等(转).doc

    LaTex基本语法-和word对应的字体等(转) LaTex基本语法-和word对应的字体等(转) LaTex基本语法 1.LaTeX文件的框架如下:\documentclass{article}\b ...

  10. Android.mk文件语法规范及使用模板 (转载)

    2019独角兽企业重金招聘Python工程师标准>>> http://blogold.chinaunix.net/u3/99423/showart_2206760.html Andr ...

最新文章

  1. 如何配置SAP Analytics Cloud到SAP Cloud for Customer的连接
  2. osgi 模块化_OSGI –模块化您的应用程序
  3. Linux 字符设备驱动结构(二)—— 自动创建设备节点
  4. 深度学习准备「爆破」著名的欧拉方程
  5. ora-07445 oracle 9,Oracle ORA-07445 : 出现异常错误: 核心转储(一)
  6. [转载] Python基础之类型转换与算术运算符
  7. oracle util_mail,Oracle UTL_MAIL邮件包程序使用实践
  8. The 15th UESTC Programming Contest Preliminary D - Destr0y City cdoj1558
  9. Vertex Texture Fetch 顶点纹理拾取
  10. 14寸笔记本电脑_华为笔记本电脑该如何选择?横向对比华为三款14寸笔记本
  11. linux定时备份前一天,linux定时备份
  12. 解决“C:\Windows\System32\ntdll.dll”。无法查找或打开 PDB 文件问题
  13. c语言贪吃蛇游戏的关键技术,C语言的贪吃蛇游戏设计
  14. python中print输出格式_Python print格式化输出
  15. WebAPI HelpPage出现Failed to generate the sample for media type 'application/x-www-form-urlencoded'. 错
  16. 微型计算机8086工作原理,8086到80486微型计算机系统原理与接口
  17. 双IP双线路实现方式 先来说说双线单IP和双线双IP的区别
  18. Qt5构建出错问题解决办法:为项目untitled执行步骤
  19. 几款远程登录软件的对比
  20. 软件测试自学还是报班好?

热门文章

  1. SCDN博客的转载方法
  2. java 成绩管理系统 报告_Java学生成绩管理系统实验报告
  3. 动易html在线编辑器,动易系统解决IE8网站后台编辑器无效问题
  4. h5页面如何切图_切图与CSS入门
  5. 无限制版电驴连接不上服务器,电驴怎么连接服务器?电驴连接不上服务器的解决方法介绍...
  6. 网络综合实验结课总结
  7. 大学生科技立项项目申报书超详细写作规范
  8. 【毕业设计】基于单片机的超声波雷达系统
  9. 学习【新版的】韦东山嵌入式_day01
  10. Anylogic学习--------------三维窗口