Latex教程
导言区% \newcommand - 定义命令% 命令只能由字母组成,不能以\end开头% \newcommand<命令>[<参数个数>][<首参数默认值>]{<具体定义>}% \newcommand可以是简单字符串替换,例如:% 使用\RPC相当于People's Republic of\emph{China}这一串内容% \newcommand也可以使用参数% 参数个数可以从 1 到 9,使用
Latex教程
Latex教程
Latex是一种撰写文档的一种方式,适合数学公式较多的场景,对文档编辑的自由度较高,比较容易,不会出现Word中格式的问题。
相关文档查看以及学习资源:https://www.latexstudio.net/
通过电脑cmd终端输入命令texdoc ctex
或者texdoc lshort-zh
查看相应的文档
示例:
% 导言区
% 在导言区主要进行全局设置
\documentclass{article} %article, book, report, letter
\usepackage{ctex}
% 或者上面两行可以用 \documentclass{ctexart} 来代替,效果相同
%ctexart, ctexbook, ctexrep, ctexbook, ctexbeamer 没有letter这样的文档类
\title{\heiti 杂谈勾股定理}
\author{\kaishu 张三}
\date{\today}
\newcommand\degree{^\circ}
% 正文区(文稿区)
\begin{document} % 一个latex文件有且只有一个document环境
\maketitle % 使用此命令输出整个标题
Hello world!
%通过增加空行来进行换行
let $f(x)$ be defined by the formula $f(x)=3x^2+x-1$ % 通过 $ $来编写公式
$$f(x)=3x^2+x-1$$ which is a ploynomial of degree 2. % 可以通过 $$ $$来另起一行进行显示公式
勾股定理可以用现代语言表述如下:
直角三角形斜边的平方等于两腰的平方和。%是否定格写和最终输出结果没有关系
可以用符号语言表述为:设直角三角形 $ ABC $,其中 $ \angle C = 90 \degree$,则有:
\begin{equation}
AB^2 = BC^2 + AC^2
\end{equation}
\end{document}
运行结果:
1 字体属性
在Latex中,一个字体有5中属性:
- 字体编码
- 正文字体编码:OT1,T1,EU1等
- 数学字体编码:OML、OMS、OMX等
- 字体族
- 罗马字体:笔画起始处有装饰
- 无衬线字体:笔画起始处无装饰
- 打字机字体:每个字符宽度相同,有称等宽字体
- 字体系列
- 粗细
- 宽度
- 字体形状
- 直立
- 斜体
- 伪斜体
- 小型大写
- 字体大小
示例:
% 导言区
% 在导言区主要进行全局设置
\documentclass[10pt]{article}
\date{\today}
\usepackage{ctex}
%\setmainfont{Minion Pro}
\usepackage[T1]{fontenc}
\setmainfont{TeX Gyre Termes}
\newcommand{\myfont}{\textbf{\textsf{Fancy Text}}}
% 正文区(文稿区)
\begin{document}
% 字体族设置(罗马字体、无衬线字体、打字机字体)
字体族设置:
\textrm{Roman Family} \textsf{Sans Serif Family} \texttt{Typewriter Family}
\rmfamily Roman Family {\sffamily Sans Serif Family} {\ttfamily Typewriter Family} %可以用{}限制字体作用的范围
\sffamily Here show sffamily font style
%如果不用{}来限定字体作用范围,等到达下一个字体格式时会自动停止当前字体的格式
\ttfamily Here show ttfamily font style
{\rmfamily Here show rmfamily font style.} % 可以通过{}限制字体作用的范围
Here show ttfamily font style!
% 字体系列设置(粗细、宽度)
\songti 字体系列设置:
\textmd{Medium Series} \textbf{Boldface Series}
{\mdseries Medium Series} {\bfseries Boldface Series}
% 字体形状(直立、斜体、伪斜体、小型大写)
\songti 字体形状:
\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}
% 中文字体 注意需要使用ctex宏包,否则无法使用中文的相关设置
\songti 中文字体:
{\songti 宋体} \quad{\heiti 黑体} \quad {\fangsong 仿宋}\quad{\kaishu 楷书}
\songti 中文字体的{\bf 粗体}{\songti 与}\textit{斜体}\\ % 中文的粗体是用黑体表示的,斜体是用楷书表示的
% 字体大小
{\tiny Hello}\\
{\scriptsize Hello}\\
{\footnotesize Hello}\\
{\small Hello}\\
{\normalsize Hello}\\
{\large Hello}\\
{\Large Hello}\\
{\LARGE Hello}\\
{\huge Hello}\\
{\Huge Hello}\\
% 中文字号设置命令
\zihao{-0} 你好!\\% 参数为 -0 为小初号
\zihao{5} 大人
\myfont
\end{document}
运行结果:
2 Latex文档基本结构
% 导言区
\documentclass{ctexbook}
%\usepackage{ctex}
\ctexset{
section = {
format+ = \zihao{-4} \heiti \raggedright,
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 \raggedright,
% name={\thesubsection、},
name = {,、},
number = \chinese{section},
beforeskip = 1.0ex plus 0.2ex minus .2ex,
afterskip = 1.0ex plus 0.2ex minus .2ex,
aftername = \hspace{0pt}
}
}
% 正文区(文稿区)
\begin{document}
\tableofcontents %产生整个文档的目录
\chapter{绪论}
\section{引言}
近年来,随着互联网技术的发展,我国的数字化教育资源建设取得了巨大的成就。很多高校建立了自己的数字化学习平台,数字化教学在教育中发挥着越来越大的作用。
new近年来,随着互联网技术的发展,我国的数字化教育资源建设取得了巨大的成就。
\\很多高校建立了自己的数字化学习平台,数字化教学在教育中发挥着越来越大的作用
% 采用\\的方法来换行并不能缩进,但是如果采用\par的方式,能够产生新的段落,通常为了保证源文件的清晰,通过插入空行来实现
近年来,随着互联网技术的发展,我国的数字化教育资源建设取得了巨大的成就。
\par 很多高校建立了自己的数字化学习平台,数字化教学在教育中发挥着越来越大的作用
\section{实验方法}
\section{实验结果}
\subsection{数据}
\subsection{图表}
\subsubsection{实验条件} %subsubsection在book中不起作用
\subsubsection{实验过程} 实验过程实验过程
\subsection{结果分析}
\section{结论}
\section{致谢}
\chapter{实验与结果分析}
\section{引言}
\section{实验方法}
\section{实验结果}
\subsection{数据}
\subsection{图表}
\subsubsection{实验条件}
\subsubsection{实验过程}
\subsection{结果分析}
\section{结论}
\section{致谢}
\end{document}
运行结果:
3 Latex中的特殊字符
在Latex中,特殊字符使用如下:
- 空行分段,多个空行等同一个
- 自动缩进,绝对不能使用空格代替
- 英文中多个空格处理为一个空格,中文中空格将被忽略
- 汉字与其他字符的间距会自动由XeLaTeX处理
- 禁止使用中文全角空格
示例:
% 导言区
\documentclass{article}
\usepackage{ctex}
\usepackage{xltxtra} % 提供了针对XeTeX的改进并且加入了XeTeXd的LOGO
\usepackage{texnames} % 一些LOGO
\usepackage{mflogo}
% 正文区(文稿区)
\begin{document}
\section{空白符号}
Are you wiser than others? ddefinitely no. in some ways. may it is true. What can you achieve?
近年来,随着逆向工程 和三维重建技术in some ways.的发展和应用,获取现实世界中物体的三维数据的方法越来越多的关注和研究。
% 1em()当前字体中M的宽度
a\quad b
% 2em
a\qquad b
% 约为1/6个em
a\,b
a\thinspace b
0.5个em:
a\enspace b
空格:
a\ b
硬空格:% 也就是不能分割的空格
a~b
1pc=12pt=4.218mm
a\kern 1pc b
-1em:
a\kern -1em b
a\kern 1em b
a\hspace{35pt}b
占位高度
a\hphantom{xyzttt}b %和输入框中的占用宽度相同
弹性长度
ddddddddda\hfill b
\section{\LaTeX 控制符}
\# \$ \{ \}
\~{}
\_{}
\^{}
\textbackslash
\&
\section{排版符号}
\S \P \dag \ddag
\copyright \pounds
\section{\TeX 标志符号}
% 基本符号
\TeX{} \LaTeX{} \LaTeXe{}
\XeLaTeX %xltxtra宏包提供
%texnames宏包提供
\AmSTeX{} \AmS-\LaTeX{}
\BibTeX{} \LuaLaTeX
%mflog宏包提供
\METAFONT{}
\MF{}
\MP{}
\section{引号}
单引号 \quad ` '
双引号 \quad `` ''
\section{连字符}
-\quad -- \quad ---
\section{非英文字符}
\oe \quad \OE \quad \ae \quad \AE \quad \aa \quad \AA \quad \o \quad
\O \quad \l \quad \L \quad \ss \quad \SS \quad !` \quad ?`
\section{重音字符(以o为例)}
\`o \quad \'o \quad \^o \quad
\''o \quad \~o \quad \=o \quad
\.o \quad \u{o} \quad \v{o} \quad
\H{o} \quad \r{o} \quad \t{o} \quad
\b{o} \quad \c{o} \quad \d{o}
\end{document}
运行结果:
4 Latex中的插图
导言区:\usepackage{graphicx}
语法:\includegraphics[<选项>]{<文件名>}
格式:EPS,PDF,PEG,JPEG,BMP
示例:
% 导言区
\documentclass{ctexart}
%usepackage{ctex}
%导言区:\usepackage{graphicx}
%语法:\includegraphics[<选项>]{<文件名>}
%格式:EPS,PDF,PEG,JPEG,BMP
%\usepackage{graphics}
\usepackage{graphicx}
\graphicspath{{figures/},{pics/}} %图片在当前目录下的 figures 目录,图片可以放在多个目录中用{}包含进来
% 正文区(文稿区)
\begin{document}
\LaTeX{}中的插图:
\includegraphics{new} % 可以加入文件后缀名,也可以不加
\includegraphics{baa.bmp}
\includegraphics[scale=0.3]{new}
\includegraphics[scale=0.3]{baa.bmp}
\includegraphics[height=2cm]{new}
\includegraphics[height=2cm]{baa.bmp}
\includegraphics[width=2cm]{new}
\includegraphics[width=2cm]{baa.bmp}
\includegraphics[height=0.1\textheight]{new}
\includegraphics[height=0.1\textheight]{baa.bmp}
\includegraphics[width=0.2\textheight]{new}
\includegraphics[width=0.2\textheight]{baa.bmp}
\includegraphics[angle=-45,width=0.2\textwidth]{baa}
\end{document}
运行结果:
5 Latex中添加表格
Latex中插入表格方式:
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
\hline
<表项> & <表项> & ... & <表项> & <表项> \\
...
\end{tabular}
用\\
表示换行,用&
表示不同的列
l
—本列左对齐,c
—本列居中对齐,r
—本列右对齐,p{<宽>}
—本列宽度固定,能够自动换行
可以在cmd中输入texdoc booktab
或texdoc longtab
或texdoc tabu
等命令查看表格对应的文档。
示例:
% 导言区
\documentclass{ctexart} % ctexbook,ctexrep
%usepackage{ctex}
% 正文区(文稿区)
\begin{document}
\begin{tabular}{| l || c | c | c | r |}
\hline
姓名 & 语文 & 数学 & 外语 & 备注\\
\hline \hline
张三 & 87 & 100 & 93 & 优秀\\
\hline
李四 & 75 & 64 & 53 & 补考\\
\hline
王二 & 80 & 82 & 78 &\\
\hline
\end{tabular}
\begin{tabular}{| l || c | c | c | p{1.5cm} |} % 可以通过p来设置列宽
\hline
姓名 & 语文 & 数学 & 外语 & 备注\\
\hline \hline
张三 & 87 & 100 & 93 & 优秀\\
\hline
李四 & 75 & 64 & 53 & 补考另行通知\\ %当字数超过规定的列宽时,会自动换行
\hline
王二 & 80 & 82 & 78 &\\
\hline
\end{tabular}
\end{document}
运行结果:
6 Latex中的浮动体
利用浮动体可以实现灵活分页(避免无法分割的内容产生的页面留白),给图表添加标题,交叉引用
语法:figure环境(table环境与之类似)
\begin{figure}[<允许位置>]
< 任意内容 >
\end{figure}
<允许位置>
参数(默认tbp)
- h,此处(here)— 代码所在的上下文位置
- t,页顶(top)— 代码所在页面或之后页面的顶部
- b,页底(bottom)— 代码所在页面或之后页面的底部
- p,独立一页(page)— 浮动页面
标题控制(caption、bicaption等宏包)
并排与子图表(subcaption、subfig、floatrow等宏包)
绕排(picinpar、wrapfig等宏包)
示例:
%导言区
\documentclass{ctexart}
\usepackage{graphicx}
%\usepackage{graphics}
\graphicspath{{figures/},{pics/}}
% 正文区(文稿区)
\begin{document}
%有figure浮动体环境
\LaTeX{}中\TeX 系统的吉祥物---小狮子见图\ref{fig-lion}:%通过标签的方式实现引用
\begin{figure}[htbp] %将该部分内容排在合适的位置
\centering %通过此命令将环境中的内容居中排版,该排版只影响环境中的内容
\includegraphics[scale=1]{baa}
\caption{\TeX 系统的吉祥物---小狮子}\label{fig-lion} %该插图被自动进行了编号,可以对图片打标签从而进行实现引用
\end{figure}
walle是电影机器人总动员中的主角,见图\ref{fig-ba}:
\begin{figure}[htbp]
\centering
\includegraphics[scale=0.5]{ba}
\caption{walle}\label{fig-ba}
\end{figure}
在\LaTeX{}中的表格中使用表格\ref{table-score}所示的表格:
\begin{table}[h]
\centering
\caption{考试成绩单}\label{table-score} %表格也被进行自动编号,和插图编号相互独立
\begin{tabular}{|l|c|c|c|r|}
\hline
姓名 & 语文 & 数学 & 外语 & 备注\\
\hline \hline
张三 & 87 & 100 & 93 & 优秀\\
\hline
李四 & 75 & 64 & 53 & 补考\\
\hline
王二 & 80 & 82 & 78 &\\
\hline
\end{tabular}
\end{table}
\end{document}
运行结果:
7 Latex数学公式初步
Latex中公式的使用方式见示例:
% 导言区
\documentclass{ctexart}
\usepackage{amsmath} %带*号的equation需要用到此宏包
\usepackage{lmodern}
% 正文区(文稿区)
\begin{document}
\section{简介}
\LaTeX{}将排版内容分为文本模式和数学模式,文本模式用于普通文本排版,数学模式用于数学公式排版。
\section{行内公式}
\subsection{美元符号}
交换律是$a+b=b+a$,如$1+2=2+1$。
\subsection{小括号}
交换律是\(a+b=b+a\),如\(1+2=2+1\)。
\subsection{math环境}
\begin{math}
1+2=2+1=3
\end{math}
\section{上下标}
\subsection{上标}
$3x^{20} + 2x^2 - x + 2 =0$ %使用{}里面的内容为上标内容
$3x^{3x^{20} + 2x^2 - x + 2} + 2x^2 - x + 2 =0$
\subsection{下标}
$a_0, a_1, a_2, ... ,a_{100},a_{2x^2 - x + 2}$
\subsection{希腊字母}
$\alpha$
$\beta$
$\gamma$
$\epsilon$
$\pi$
$\omega$
$\Gamma$
$\Delta$
$\Theta$
$\Pi$
$\Omega$
$\alpha^3 + \beta^2 +\gamma = 0$
\section{数学函数}
$\log$
$\sin$
$\cos$
$\arcsin$
$\arccos$
$\ln$
$\sin^2 x + \cos^2 x = 1$
$y = \arcsin x$
$y = \sin^{-1} x$
$y = \log_2 x$
$y = \ln x$
$\sqrt{2}$
$\sqrt{x^2 + y^2}$
$2\sqrt{2 + \sqrt{2}}$
$\sqrt[4]{x}$
\section{分式}
大约是原体积的$3/4$。
大约是原体积的$\frac{3}{4}$
$\frac{x}{x^2 + x + 1}$
$\frac{\sqrt{x-1}}{\sqrt{x+1}}$
$\frac{1}{1 + \frac{1}{x}}$
$\sqrt{\frac{x}{x^2 + x + 1}}$
\section{行间公式}
\subsection{美元符号}
交换律是
$$a+b=b+a$$
如
$$1+2=2+1=3$$
\subsection{中括号}
交换律是
\[a+b=b+a\]
如
\[1+2=2+1=3\]
\subsection{displaymath环境}
交换律是
\begin{displaymath}
a+b=b+a
\end{displaymath}
如
\begin{displaymath}
1+2=2+1=3
\end{displaymath}
\subsection{自动编号公式equation环境}
交换律见式 \ref{eq:commutative}:
\begin{equation}
a+b=b+a \label{eq:commutative}
\end{equation}
\subsection{不编号公式equation*环境}
交换律见式 \ref{eq:commutative2}:%此时交叉引用的编号是小节编号
\begin{equation*}
a+b=b+a \label{eq:commutative2}
\end{equation*}
公式的编号与交叉引用也是自动实现的,大家在排版中要习惯于采用自动化的方式处理诸如图、表、公式的编号与交叉引用。再如公式\ref{eq:pol}
\begin{equation}
x^5 - 7x^3 + 4x = 0 \label{eq:pol}
\end{equation}
\end{document}
运行结果:
8 Latex数学公式的矩阵
用Latex排版复杂数学公式的矩阵如下:
% 导言区
\documentclass{ctexart}
\usepackage{amsmath}
\usepackage{lmodern}
\newcommand{\adots}{\mathinner{\mkern2mu%
\raisebox{0.1em}{.}\mkern2mu\raisebox{0.4em}{.}%
\mkern2mu\raisebox{0.7em}{.}\mkern1mu}}
% 正文区(文稿区)
\begin{document}
\[
\begin{matrix}
0 & 1\\
1 & 0
\end{matrix} \qquad
\begin{vmatrix}
i & v \\
0 & -i
\end{vmatrix} \qquad
\begin{Vmatrix}
i & V \\
0 & -i
\end{Vmatrix} \qquad
\begin{pmatrix}
i & p \\
0 & -i
\end{pmatrix} \qquad
\begin{bmatrix}
i & b \\
0 & -i
\end{bmatrix} \qquad
\begin{Bmatrix}
i & B \\
0 & -i
\end{Bmatrix} \qquad
\]
% 可以使用上下标
\[
A =
\begin{pmatrix}
a_{11}^2 & a_{12}^2 & a_{13}^2 \\
0 & a_{22} & a_{23} \\
0 & 0 & a_{33}
\end{pmatrix}
\]
% 常用省略号:\dots、 \vdots、 \ddots
\[
A = \begin{bmatrix}
a_{11} & \dots & a_{ln} \\
& \ddots & \vdots \\
0 & & a_{nn}
\end{bmatrix}_{n \times n} % 在数学公式中可以用\times来排版 × 号
\]
% 常用省略号:\dots、 \vdots、 \ddots、 \adots(这个是自定义的一个命令,可以通过newcommand来新建一个格式)
\[
A = \begin{bmatrix}
a_{11} & \dots & a_{ln} \\
\adots & \ddots & \vdots \\
0 & & a_{nn}
\end{bmatrix}_{n \times n} % 在数学公式中可以用\times来排版 × 号
\]
% 分块矩阵
\[
\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_{ln} \\
& 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 ln \\
\hdotsfor{4} \\
m & \frac m2 & \dots & \frac mn
\end{pmatrix}
\]
% 行内小矩阵(smallmatrix)环境
复数 $z = (x,y)$也可用矩阵
\begin{math}
\left(% 需要手动加上左括号
\begin{smallmatrix}
x & -y \\ y & x
\end{smallmatrix}
\right)% 需要手动加上右括号
\end{math}来表示。
% array环境(类似于表格环境tabular)
\[
\begin{array}{r|r}
\frac{1}{2} & 0\\
\hline
0 & -\frac a{bc} \\
\end{array}
\]
% 用array环境构造复杂矩阵
\[
% @{<内容>}-添加任意内容,不占表项计数
% 此处添加一个负值空白,表示向左移-5pt的距离
\begin{array}{c@{\hspace{-5pt}}l}
%第1行,第1列
\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)
&
% 第1行第2列
\begin{array}{l}
%\left.仅表示与\right\}配对,什么都不输出
\left.\rule{0mm}{7mm}\right\}p\\
\\
\left.\rule{0mm}{7mm}\right\}q\\
\end{array}
\\[-5pt]
% 第2行,第1列
\begin{array}{cc}
\underbrace{\rule{17mm}{0mm}}_m &
\underbrace{\rule{17mm}{0mm}}_m
\end{array}
& % 第2行第2列
\end{array}
\]
\end{document}
运行结果:
9 Latex中多行公式排版方法
针对多行公式排版问题,可以参考示例:
% 导言区
\documentclass{ctexart}
\usepackage{amsmath}
\usepackage{amssymb}
% 正文区(文稿区)
\begin{document}
\begin{gather} %可以使用gather实现多行公式排版
% gather 和 gather* 环境(可以使用\\换行)
% 带编号
a + b = b + a \\
ab ba
\end{gather}
\begin{gather*}
3 + 5 = 5 + 3 = 8 \\
3 \times 5 = 5 \times 3
\end{gather*}
% 在\\前使用 \notag 阻止编号
\begin{gather}
3^2 + 4^2 = 5^2 \notag \\
5^2 + 12^2 = 13^2 \notag \\
a^2 + b^2 = c^2
\end{gather}
% align 和 align* 环境(用 & 进行对齐)
% 带编号
\begin{align}
x &= t + \cos t + 1 \\
y &= 2\sin t
\end{align}
% 不带编号
\begin{align*}
x &= t & x &= \cos t & x &= t \\
x &= 2t & x &= \sin(t+1) & y &= \sin t
\end{align*}
% split 环境(对齐采用 align 环境的方式,编号在中间)
\begin{equation}
\begin{split}
\cos 2x &= \cos^2 x - \sin^2 x \\
&= 2\cos^2 x - 1
\end{split}
\end{equation}
% case 环境
% 每行公式中使用 & 分隔为两部分,通常表示值和后面的条件
\begin{equation}
D(x) = \begin{cases} % 数学公式中无法实现中文排版,需要\text切换到文本模式
1, & \text{如果 } x \in \mathbb{Q}; \\ % \in 命令用于输出 属于 符号
0, & \text{如果 } x \in \mathbb{R}\setminus\mathbb{Q}. % \mathbb 用于输出花体字符,需要amssymb宏包支持
\end{cases}
\end{equation}
\end{document}
运行结果:
10 Latex中的参考文献BibTeX
一次管理,一次使用
参考文献格式:
\begin{thebibliography}{编号样本}
\bibitem[记号]{引用标志}文献条目1
\bibitem[记号]{引用标志}文献条目2
......
\end{thebibliography}
其中文献条目包括:作者,题目,出版社,年代,页码等。
引用时候要可以采用:\cite{引用标志1,引用标志2,...}
示例:
% 导言区
\documentclass{ctexart}
\usepackage{natbib}
\bibliographystyle{plain} % plain unsrt alpha abbrv 选择采用不同的排版样式 需要清理样式文件
\begin{document}
% 一次管理,一次使用
% 参考文献格式:
% \begin{thebibliography}{编号样本}
% \bibitem[记号]{引用标志}文献条目1
% \bibitem[记号]{引用标志}文献条目2
% ......
% \end{thebibliography}
% 其中文献条目包括:作者,题目,出版社,年代,页码等。
% 引用时候要可以采用:\cite{引用标志1,引用标志2,...}
引用一篇文章 \cite{bernd_bullnheimer_improved_nodate}
引用另外一篇文章\cite{chengzhi_qu_novel_2020}
引用第三篇文章\cite{haibin_duan_three-dimension_2010}
引用另个一文献\cite{article4}
\begin{thebibliography}{99}
\bibitem{article4}陈立辉,苏伟,蔡川,陈晓云.\emph{基于LaTeX的Web数学公式提取方法研究}[j].计算机科学. 2014(06)
\end{thebibliography}
\bibliography{paper,newpapers}
\nocite{xianwei_wang_path_2020} % 可以使用 \nocite 插入未引用的特定的参考文献
% \nocite{*} % 该命令是排版未引用的所有文献。需要在 工具 选项中点击 清理辅助文件,然后重新运行即可看到排版的所有未引用的参考文献
\end{document}
运行结果:
11 Latex中的参考文献BibLaTeX
通过BibLaTeX来插入参考文献:
% 导言区
\documentclass{ctexart}
% biblatex/biber
% 新的TEX参考文献排版引擎
% 样式文件()参考文献样式文件--bbx文件,引用样式文件--cbx)使用LATEX编写
% 支持根据本地化排版,如:
% biber -l zh_pinyin texfile, 用于指定按拼音排序
% biber -l zh_stroke texfile, 用于按笔画排序
%\usepackage[style=numeric,backend=biber]{biblatex}
\usepackage[style=caspervector,backend=biber,utf8,sorting=cenyt]{biblatex}
%sorting是将参考文献按照中英文姓名等进行排序,cenyt分别表示c为中文e为英文n为作者姓名t为文献标题y为出版年,也可以为ecnyt
%如果不需要进行sorting,则sorting=cenyt这句命令可以不用写
\addbibresource{paper.bib} % 文件名 .bib 不能省略
%正文区(文稿区)
\begin{document}
%一次管理多次使用
无格式化引用\cite{bernd_bullnheimer_improved_nodate}
带方括号的引用\parencite{__2020}
上标引用\supercite{fatin_hassan_ajeil_grid-based_2020}
又一篇文章\supercite{huchunyangGaiJinYiQunSuanFaZaiAGVLuJingGuiHuaZhongDeYingYong2020}
有一篇文章\supercite{NewRankBased}
% \nocite{*} % 输出未引用的参考文献
\printbibliography % 输出参考文献列表
% \printbibliography[title={参考文献}] % 可以通过此命令将 References 改为中文 参考文献
\end{document}
运行结果:
也可以在文件夹下通过新建build.bat
文件,并写入如下代码:
xelatex document
biber -l zh__pinyin document
xelatex document
xelatex document
del *.aux *.bbl *.bcf *.bcf *.blg *.log *.xml
其中document
和document.tex
文件名相对应,且.bat
文件和.tex
文件放在同级目录下。并对TeXstudio的Biber进行更改如下:
然后双击执行,不需要用管理员来运行,用管理员运行会出错。
12 Latex中的自定义命令和环境
Latex中自定义命令和环境示例:
% 导言区
\documentclass{ctexart}
% \newcommand - 定义命令
% 命令只能由字母组成,不能以\end开头
% \newcommand<命令>[<参数个数>][<首参数默认值>]{<具体定义>}
% \newcommand可以是简单字符串替换,例如:
% 使用\RPC相当于People's Republic of\emph{China}这一串内容
\newcommand\PRC{People's Republic of \emph{China}}
% \newcommand也可以使用参数
% 参数个数可以从 1 到 9,使用时用 #1,#2,...,#9 表示
\newcommand\loves[2]{#1 喜欢 #2}
\newcommand\hatedby[2]{#2 不受 #1 喜欢}
% \newcommand的参数也可以由默认值
% 指定参数个数的同时指定了首个参数的默认值,那么这个命令的第一个参数就称为可选的参数(要使用中括号指定)
\newcommand\love[3][喜欢]{#2#1#3}
% \renewcommand - 重定义命令
% 与\newcommand 命令作用和用法相同,但只能用于已有命令
% \renewcommand<命令>[<参数个数>][<首参数默认值>]{<具体定义>}
\renewcommand\abstractname{内容简介}
% 定义和重定义环境
% \newenvironment{<环境名称>}[<参数个数>][<首参数默认值>]
% {<环境前定义>}
% {<环境后定义>}
% \renewenvironment{<环境名称>}[<参数个数>][<首参数默认值>]
% {<环境前定义>}
% {<环境后定义>}
% 为 book 类中定义摘要 (abstract) 环境
\newenvironment{myabstract}[1][摘要]
{\small %设定字号
\begin{center}\bfseries #1\end{center}
\begin{quotation}}
{\end{quotation}}
% 环境参数只有<环境前定义>中可以使用参数,
% <环境后定义>中不能再使用环境参数
% 如果需要,可以先把前面得到的参数保存在一个命令中,在后面使用:
\newenvironment{Quotation}[1]
{\newcommand\quotesource{#1}
\begin{quotation}}
{\par\hfill--- 《\textit{\quotesource}》
\end{quotation}}
%正文区(文稿区)
\begin{document}
\begin{abstract}
这是一段摘要
\end{abstract}
\PRC
\loves{猫}{鱼}
\hatedby{猫儿}{萝卜}
\love{猫儿}{鱼}
\love{最爱}{猫儿}{鱼}
\begin{myabstract}[我的摘要] %将 我的摘要 替换 摘要
这是一段自定义格式的摘要...
\end{myabstract}
\begin{Quotation}{易$\cdot$乾}
初九,潜龙勿用。
\end{Quotation}
定义命令和环境是进行\LaTeX{}格式定制、达成内容与格式分离目标的利器。使用自定义的命令和环境把字体、字号、缩进、对齐、间距等各种繁琐的内容包装起来,赋以一个有意义的名字,可以使文档结构清晰、代码整洁、易于维护。在使用宏定义功能时,要综合利用各种已有的命令、环境、变量等功能,事实上,前面所介绍的长度变量与盒子、字体字号等内容,大多并不直接出现在文档正文中,而主要都是用在实现各种结构化的宏定义中。
\end{document}
运行结果:
更多推荐
所有评论(0)