目录
- 一、LaTeX软件的安装与环境配置
- 1.LaTeX软件texlive的下载
- 2. texlive的安装
- 二、用命令行实现LaTeX文档的编写
- 1.通过命令行演示LaTeX编写的过程
- 2.将编译LaTeX并生成pdf文件的过程封装成一个bat文件
- 3.演示一个含有中文的LaTeX文件
- 三、用TexStudio IDE实现LaTeX文档的编写
- 1.下载TexStudio
- 2.安装TexStudio
- 3.将TexStudio的语言设为中文
- 4.选择TexStudio的编译器
- 5.使用TexStudio编写一个LaTeX文件
- 四、LaTeX源文件的基本结构
- 五、LaTeX中的中文处理方法
- 1.示例演示
- 2.使用命令查看CTEX宏集手册
- 3.使用命令查看LaTeX的简单教程
- 六、LaTeX的字体字号设置
- 七、LaTeX的篇章结构
- 八、LaTeX中的特殊字符
- 九、LaTeX中的插图
- 十、LaTeX中的表格
- 十一、LaTeX中的浮动体
- 十二、LaTeX数学公式初步
- 十三、LaTeX数学公式的矩阵
- 十四、LaTeX数学公式的多行公式
- 十五、LaTeX中的参考文献BibTex
- 1.手动编写参考文献
- 2.借助镜像Google学术实现文献数据库的管理
- 十六、LaTeX中的参考文献BibLaTeX(因卡在Zotero插件上,本节笔记未记完)
- 十七、LaTeX中的自定义命令和环境
说明:1.该文章是学习 b站上 西北农林科技大学耿楠教授的LaTeX视频教程而记录的笔记,笔记来源于本人。 若有侵权,请联系本人删除。2.另外,由于时间导致一些软件的更迭,为了完成同样的功能,步骤等难免有所改动。笔记难免可能出现错误或笔误,若读者发现笔记有错误,欢迎在评论里批评指正。3.有些细节内容通过目录不便查询,请使用 浏览器的搜索快捷键Ctr+G,再尝试搜索对应内容。4.如果时间有限,建议直接把本人整理出的LaTeX代码复制到TexStudio中运行,对照着代码以及本人给出的详细注释进行理解。5.由于本人在使用 Zotero上还存在问题,故 关于LaTeX中参考文献的笔记并未整理完整,欢迎大家分享正确使用Zotero的方法。
一、LaTeX软件的安装与环境配置
1.LaTeX软件texlive的下载
如下图所示,首先去LaTex的官网,选择“downloading the TeX Live ISO image and burning your own DVD”,选择“download from a nearby CTAN mirror”(即选择最新的镜像文件),点击“texlive2023.iso”即可下载。
2. texlive的安装
如下图所示,点击下载好的iso镜像文件,以管理员身份打开“install-tl-windows.bat”。
然后如下图所示修改安装路径,在弹出的窗口中点击“是”,并点击“安装”。
长时间等待后,安装完成后会显示如下界面。
然后如下图所示,打开命令行窗口,输入“xelatex -v”或“latex -v”,如果出现版本信息则说明安装成功。
xelatex -v
latex -v
二、用命令行实现LaTeX文档的编写
1.通过命令行演示LaTeX编写的过程
首先如下图所示,在某个文件路径下打开命令行窗口。
然后输入命令创建一个名为“testLaTex”的文件夹,然后在该文件夹中使用记事本创建文件“test.tex”。
mkdir testLaTex # 创建文件夹“testLaTex”
cd testLaTex # 进入文件夹“testLaTex”
notepad test.tex # 使用记事本创建文件“test.tex”
然后就可以在记事本中写LaTex命令,下面的示例使用documentclass命令引入了article文档类(用于撰写论文相关操作的文档类)。然后在“\begin{document}”和“\end{document}”中间编写我们需要的文档。(注:1.我们需要使用{}来描述一个命令的参数。2.“\begin”和“\end”是成对出现的。)
\documentclass {article}\begin{document}
Hello \LaTeX.
\end{document}
文档写好后,就可以保存并关闭记事本。
接着有两种方式对LaTeX文件进行编译。第一种编译方式:使用如下命令来编译LaTex文件,发现产生了一个“test.dvi”文件。然后使用命令将文件“test.dvi” 转成了pdf文件“test.pdf”。然后输入命令打开文“test.pdf”并查看LaTex代码编写的结果。
latex test.tex # 编译文件“test.tex”
dvipdfmx test.dvi # 将文件“test.dvi”转成pdf文件
test.pdf # 打开文件“test.pdf”
第二种编译方式:输入命令“xelatex test.tex”编译文件“test.tex”成pdf,然后使用命令打开编译产生的pdf文件。
xelatex test.tex # 编译文件“test.tex”
test.pdf # 打开文件“test.pdf”
2.将编译LaTeX并生成pdf文件的过程封装成一个bat文件
每次编写完LaTeX文件后,都要在命令行进行编译操作比较麻烦。所以我们可以将编译LaTeX并生成的pdf文件的过程封装成一个bat文件,具体过程如下。
首先,新建一个bat文件(即图中的“build.bat”)。
然后通过记事本打开该文件(即打开图中的“build.bat”文件)。
notepad build.bat # 通过记事本打开“build.bat”
将编译以及打开pdf文件的命令写入文件“build.bat”中,然后使用快捷键Ctr+S进行保存(注:编译的文件名需改成对应的文件名),然后退出“build.bat”文件。
latex test.tex
dvipdfmx test.dvi
del *.aux *.dvi *.log
# 注释:
latex test.tex # 编译文件
dvipdfmx test.dvi # 转成pdf文件
del *.aux *.dvi *.log # 删除产生的中间文件
删除pdf文件,并运行“build.bat”程序,看一看效果。
build # 运行“build.bat”程序
dir # 查看当前的目录文件
当然也可以创建一个“buildx.bat”文件,编写xelatex命令来完成相同的操作。(操作命令如下,截图略)
# 1.创建文件“buildx.bat”
# 2.在命令行窗口执行下面的命令
notepad buildx.bat # 通过记事本打开“buildx.bat”
# 3.在文件“build.bat”中输入下面的内容并保存,然后关闭文件“build.bat”
xelatex test.tex
del *.aux *.dvi *.log
# -注释(注释的内容请不要复制到bat文件中):
xelatex test.tex # 编译生成pdf文件
del *.aux *.dvi *.log # 删除产生的中间文件
# 4.删除已有的pdf文件,双击文件“buildx.bat”或在命令行窗口通过命令运行程序“buildx.bat”查看效果
buildx # 运行“buildx.bat”程序
3.演示一个含有中文的LaTeX文件
首先,在命令行窗口使用记事本打开文件“test.tex”。
notepad test.tex # 使用记事本创建文件“test.tex”
然后输入下面的内容并保存。(注意:1.在命令和文字之间需要加空格,以示区分。2. ctex是支持中文的宏包。)
\documentclass {article}\usepackage {ctex}\begin{document}
你好, \LaTeX 。
\end{document}
再将文件的编码格式设为“UTF-8”(本人格式已经是“UTF-8”,为了演示过程,给出具体的截图,本人进行了重复的操作),另存完成后就退出文件“test.tex”。
之后,运行“build.bat”文件完成编译,运行完成后再打开pdf文件。
本次编写的LaTeX文件的效果图如下。
三、用TexStudio IDE实现LaTeX文档的编写
完全在命令行中编写LaTeX代码太过繁琐,不符合我们希望操作简单的要求。所以我们将安装一个免费的IDE工具来实现对LaTeX文件的编写、编译及pdf查看的功能。
1.下载TexStudio
首先打开TexStudio的官网“https://texstudio.sourceforge.net/”,选择“Download now”即可开始下载。
2.安装TexStudio
安装步骤如下几张图所示。
3.将TexStudio的语言设为中文
双击打开TexStudio。
本人的语言默认为中文。为了演示过程,本人给了几张截图。
4.选择TexStudio的编译器
为了能够正常进行相应的操作,还需要进行一些设置。首先,点击到“命令”的页面,右侧的参数可以根据需要进行调整(本次未做修改)。
然后选择“构建”,将编译器选为“XeLaTeX”,然后软件就设置好了。(在处理中文上,“XeLaTeX”比较方便。)
5.使用TexStudio编写一个LaTeX文件
首先新建一个LaTeX文档。
然后将该文件保存到一个文件夹中。
然后如下gif动图所示,输入LaTeX命令,并执行程序。(注:1.使用TexStudio的提示并结合TAB键可快速编写命令;2.按住Ctr不放,滚动鼠标滚轮可放大或缩小字体;3.可以使用%进行单行注释;4.可以使用“\iffalse … \fi”进行多行注释,但不建议使用改该种多行注释方式,因为还是会显示高亮。)
\documentclass[]{article} % 使用documentclass命令引入了article文档类\usepackage[]{ctex} % ctex是支持中文的宏包\begin{document} % 在\begin和\end对里面书写需要的文档你好, \LaTeX 。
\end{document}
四、LaTeX源文件的基本结构
本节课将通过一个实例分析LaTeX文件的基本结构。首先,创建一个文件(图中的“LaTeX_Learn_04.tex”)并保存。
然后输入LaTeX命令并运行。
% 导言区
\documentclass[]{article} % 其他类还有book,report,letter等
\usepackage[]{ctex} % ctex是支持中文的宏包\title{My First Document} % 文档名
\author{蓝色的天空} % 作者
%注:实际该文档来源于西北农林科技大学的耿楠教授,本人只是抄了过来仅仅作为笔记,方便广大网友共同学习使用
\date{\today} % 时间% 正文区(文稿区)
\begin{document} % 引入环境\maketitle % 将文档名、作者、时间进行显示Hello World!% here is my big formulaLet $f(x)$ be defined by the formula $$f(x)=3x^2+x-1$$ which is a polynomial of degree 2.
\end{document}
注:
1.如编写的内容所示,根据注释的提示可知,一个LaTeX文档可以分为导言区和正文区(也称文稿区)。
2.在导言区,我们可以使用“documentclass”命令引入文档类,比如“article”、“book”,“report”,“letter”等类。
3. 在导言区,我们还可以使用“title”设置文档的标题,使用“author”指明文档的作者,使用“date”指明文档的时间
4.在正文区,可以通过“begin…end”引入一个名为“document”的环境,注意,一个LaTeX文档只能有一个“document”环境。
5.“\maketitle” 将文档名、作者、时间进行显示。注意:letter中没有该指令
6.在“$...$”(效果:内嵌公式)或“$$...$$”(效果:另起一行居中)符号内的内容称为数学模式,而外面的内容称为文本模式,可见常在“$...$”内输入公式,比如“$f(x)$”。
7.如何分段?两段之间需要空有一行的间隔。
8.由本次编写的LaTeX实例知,在正文区,我们可以用命令、文本和数学公式构成文档。
五、LaTeX中的中文处理方法
1.示例演示
首先,检查“选项-设置TeXstudio”里的“构建-默认编辑器”是否是“XeLaTeX”,然后检查“编辑器-默认字体编码”是否是“UTF-8”,之后选择“确定”。
然后,创建一个文件(图中的“LaTeX_Learn_05.tex”)并保存。
然后输入LaTeX命令并运行。
% 导言区
\documentclass[]{article} % 其他类还有book,report,letter等
\usepackage[]{ctex} % ctex是支持中文的宏包\newcommand\degree{^\circ} % 定义角度单位\title{\heiti 杂谈勾股定理} % 文档名 \heiti:字体为黑体
\author{\kaishu 张三} % 作者
%注:实际该文档来源于西北农林科技大学的耿楠教授,本人只是抄了过来仅仅作为笔记,方便广大网友共同学习使用
\date{\today} % 时间% 正文区(文稿区)
\begin{document} % 引入环境\maketitle % 将文档名、作者、时间进行显示勾股定理可以用现代语言表述如下:直角三角形斜边的平方等于两腰的平方和。可以用符号语言表述为:设直角三角形$ABC$,其中$\angle C=90\degree$,则有:\begin{equation} % 环境“equation”用于产生带编号的公式AB^2=BC^2+AC^2.\end{equation}
\end{document}
注:
1. 需要使用“usepackage”命令将支持中文的宏包“ctex”进行导入
2. 环境“equation”用于产生带编号的公式
3. “\newcommand\degree{^\circ}”定义了角度单位
4. “\heiti”表示字体为黑体
2.使用命令查看CTEX宏集手册
有时我们会思考使用“usepackage”命令引入“ctex”究竟是什么作用呢?带着这个问题,首先,打开命令行窗口。
然后使用命令打开CTEX宏集手册。
texdoc ctex # 打开CTEX宏集手册
在目录中找到“使用CTEX文档类”,然后按住Ctr不放,鼠标左击快速调到对应内容。(注意到:“CTEX 宏集提供了四个中文文档类:ctexart、ctexrep、ctexbook 和 ctexbeamer,分别对应LATEX的标准文档类 article、report、book 和 beamer。”)
因此,回到LaTeX代码将“\usepackage[]{ctex}”注释掉,将“documentclass”导入的“article”改成“ctexart”后,再运行指令,效果不变。
% 导言区
\documentclass[]{ctexart} % 其他类还有book,report,letter等
% \usepackage[]{ctex} % ctex是支持中文的宏包\newcommand\degree{^\circ} % 定义角度单位\title{\heiti 杂谈勾股定理} % 文档名 \heiti:字体为黑体
\author{\kaishu 张三} % 作者
%注:实际该文档来源于西北农林科技大学的耿楠教授,本人只是抄了过来仅仅作为笔记,方便广大网友共同学习使用
\date{\today} % 时间% 正文区(文稿区)
\begin{document} % 引入环境\maketitle % 将文档名、作者、时间进行显示勾股定理可以用现代语言表述如下:直角三角形斜边的平方等于两腰的平方和。可以用符号语言表述为:设直角三角形$ABC$,其中$\angle C=90\degree$,则有:\begin{equation} % 环境“equation”用于产生带编号的公式AB^2=BC^2+AC^2.\end{equation}
\end{document}
3.使用命令查看LaTeX的简单教程
在命令行窗口使用命令打开LaTeX的简单教程,以便后续学习LaTeX的操作使用。
texdoc lshort-zh # 打开LaTeX的简单教程
六、LaTeX的字体字号设置
如下图所示,在LaTeX中,一个字体有5种属性,包括字体编码、字体族、字体系列、字体形状和字体大小,都可以通过命令或声明进行设置。其中,字体编码包括正文字体编码和数学字体编码;字体族分为罗马字体、无衬线字体和打字机字体;字体系列分为粗细和宽度;字体形状分为直立、斜体、伪斜体、小型大写。
关于字体编码的设置,过后再讨论,本次课程主要讨论字体族、字体系列、字体形状和字体大小。首先,创建一个文件(图中的“LaTeX_Learn_06.tex”)并保存。
然后编写LaTeX文档并运行。(注意有一点:LaTeX的思想是 * 内容与格式的分离 * ,因此不建议在文档中使用大量的命令,所以常常需要使用“newcommand”来定义一堆命令,关于“newcommand”的细节后面将会讲解。其他内容请阅读代码里的注释)
% 导言区
\documentclass[]{article} % 其他类还有book,report,letter等
% \documentclass[10pt]{article} % 10pt:修改normal size为10磅\usepackage[]{ctex} % ctex是支持中文的宏包
% 需要注意的是,LaTeX的思想是 * 内容与格式的分离 * ,因此不建议在文档中使用大量的命令,所以常常需要使用“newcommand”来定义一堆命令
\newcommand{\myfont}{\textit{\textbf{\textsf{Fancy Text}}}}% 正文区(文稿区)
\begin{document} % 引入环境% --------------1.字体族设置(罗马字体、无衬线字体、打字机字体)--------------% 方式1:通过命令设置字体族\textrm{Roman Family} % 通过命令“textrm”设置字体为罗马(Roman)字体\textsf{Sans Serif Family} % 通过命令“textsf”设置字体为无衬线字体\texttt{Typewriter Family} % 通过命令“texttt”设置字体为打字机字体% 方式2:通过声明设置字体族 {}的作用:对文本进行分组以限定声明作用的范围{\rmfamily Roman Family} % 通过“rmfamily”声明后续字体为罗马(Roman)字体{\sffamily Sans Serif Family} % 无衬线字体{\ttfamily Typewriter Family} % 打字机字体{\sffamily who you are?you find self on everyone around.take you as the same as others!}% 当启用另一个字体的声明时,会启用当前的字体声明{\ttfamily Are you wiser than others?definitely no.in some ways, may it is true.What can you achieve?a luxurious house?a brillilant car?an admirable career?who knows?}% ---------------2.字体系列设置(粗细、宽度)------------------\textmd{Medium Series} \textbf{Boldface Series}{\mdseries Medium Series} {\bfseries Boldface Series}% --------------3.字体形状(直立、斜体、伪斜体、小型大写)-----------------\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}% -------------4.中文字体----------% \quad相当于一个TAB键{\songti 宋体} \quad{\heiti 黑体}\quad{\fangsong 仿宋} \quad{\kaishu 楷书}% 中文的粗体时使用黑体表示的,斜体是使用楷书进行表示的中文字体的\textbf{粗体}与\textit{斜体}% ------------5.字体大小-----------------% 字体的大小是通过声明设置的,它是相对于normal size的,% - 而normal size是由文档类的参数控制的,可以在导言区中% - 引入文档类的地方修改normal size{\tiny Hello}\\{\scriptsize Hello}\\{\footnotesize Hello}\\{\small Hello}\\{\normalsize Hello}\\{\large Hello}\\{\Large Hello}\\{\LARGE Hello}\\{\huge Hello}\\{\Huge Hello}\\% 中文字号设置命令\zihao{-0} 你好! % zihao{-0}:小初号\zihao{5} 你好! % zihao{5}:5号\myfont
\end{document}
七、LaTeX的篇章结构
一般在撰写文档时,我们总是先撰写出文档的提纲。然后再根据提纲展开,来撰写其他的内容,这一节我们主要讲解LaTeX的篇章结构。
首先,创建一个文件(图中的“LaTeX_Learn_07.tex”)并保存。
然后编写LaTeX文档并运行。(在LaTeX中,我们可以通过“\section”、“\subsection”、“\subsubsection”等命令来构建文章的提纲。)
% 导言区
\documentclass[]{article}
\usepackage[]{ctex}% 正文区(文稿区)
\begin{document}% 1.“\section”:构建小节 “\subsection”:构建子小节 “\subsubsection”:第三级标题% 2."//":实现换行(而非段落)% 3."\par":产生新的段落 注:通常,为了保证文段的清晰,段落都是通过空行实现的% 4.“\tableofcontents”:生成目录\tableofcontents\section{引言}近年来,随着逆向工程和三维重建技术的发展和应用,获取现实世界中物体的三维数据的方法越来越多的关注和研究,很多研究机构和商业公司都陆续推出了自己的三维重建系统。近年来,随着逆向工程和三维重建技术的发展和应用,获取现实世界中物体的三维数据的方法越来越多的关注和研究。\\很多研究机构和商业公司都陆续推出了自己的三维重建系统。\par 很多研究机构和商业公司都陆续推出了自己的三维重建系统。\section{实验方法}\section{实验结果}\subsection{数据}\subsection{图表}\subsubsection{实验条件}\subsubsection{实验过程}\subsection{结果分析}\section{结论}\section{致谢}
\end{document}
八、LaTeX中的特殊字符
这一节将讲解LaTeX中的部分特殊字符的处理。首先,创建一个文件(图中的“LaTeX_Learn_08.tex”)并保存。
然后编写LaTeX文档并运行。
% 导言区
\documentclass[]{article}\usepackage[]{ctex} % 中文处理宏包
\usepackage[]{xltxtra}%提供了针对XeTeX的改进并且加入了XeTeX的LOG0
\usepackage[]{texnames} % 一些LOGO
\usepackage[]{mflogo}% 正文区(文稿区)
\begin{document}\section{空白符号}% 空行分段,多个空行等同1个% 自动缩进,绝对不能使用空格代替% 英文中多个空格处理为1个空格,中文中空格将被忽略% 汉字与其它字符的间距会自动由XeLaTeX处理% 禁止使用中文全角空格Are you wiser than others?definitely no.in some ways,may it is true.What can you achieve?a luxurious house?a brillilant car?an admirable career?who knows?近年来,随着逆向工程和三维重建技术的发展和应用,获取现实世界中物体的三维数据的方法越来越多的关注和研究,很多研究机构和商业公司都陆续推出了自己的三维重建系统。% 1em(当前字体中M的宽度,相当于一个TAB键)a\quad b% 2ema\qquad b% 约为1/6个ema\,b a\thinspace b% 0.5个ema\enspace b% 空格a\ b% 硬空格(此处的"~"表示一个非断行的不能分割的空格)a~b% 1pc=12pt=4.218mm pc:皮卡 pt:磅a\kern 1pc ba\kern -1em ba\hskip 1em ba\hspace{35pt}b% 占位宽度a\hphantom{xyz}b % 空格与"xyz"的宽度相同% 弹性长度a\hfill b\section{\LaTeX 控制符}% \加符号表示转义字符 \textbackslash:表示“\”\# \$ \% \{ \} \~{} \_{} \^{} \textbackslash \&\section{排版符号}\S \P \dag \ddag \copyright \pounds\section{\TeX 标志符号}% 基本符号\TeX{} \LaTeX{} \LaTeXe{}\XeLaTeX% texnames宏包提供\AmSTeX{} \AmS-\LaTeX{}\BibTeX{} \LuaTeX{}% mflogo宏包提供\METAFONT{} \MF{} \MP{}\section{引号}` ' `` ``你好'' % `:键盘上数字1旁边的符号,表示左单引号% ':表示右单引号\section{连字符}- -- ---\section{非英文字符}\oe \OE \ae \AE \aa \AA \o \O \l \L \ss \SS !` ?`\section{重音符号(以o为例)}\`o \'o \^o \''o \~o \=o \.o \u{o} \v{o} \H{o} \r{o} \t{o} \b{o} \c{o} \d{o}
\end{document}
九、LaTeX中的插图
首先,创建一个文件(图中的“LaTeX_Learn_09.tex”)并保存。
然后编写LaTeX文档。
% 导言区
\documentclass{ctexart} % ctexbook,ctexrep%\usepackage{ctex}% 导言区:\usepackage{graphicx}
% 语 法:\includegraphics[<选项>]{<文件名>}
% 格 式:EPS,PDF,PNG,JPEG,BMP\usepackage{graphicx}
\graphicspath{{figures/},{pics/}} % 图片在当前目录下的 figures 目录% 正文区(文稿区)
\begin{document}\LaTeX{}中的插图:\includegraphics{lion.eps}\includegraphics{mountain.jpg}\includegraphics{oscilloscope.pdf}% 引入可选参数,即“[]”里面的内容% scale:缩放因子\includegraphics[scale=0.3]{1ion}\includegraphics[scale=0.03]{mountain}\includegraphics[scale=0.3]{oscilloscope}% 图像高度设为固定值\includegraphics[height=2cm]{lion}\includegraphics[height=2cm]{mountain}\includegraphics[height=2cm]{oscilloscope}% 图像宽度设为固定值\includegraphics[width=2cm]{lion}\includegraphics[width=2cm]{mountain}\includegraphics[width=2cm]{oscilloscope}% 设置高度为当前页面正文区域高度的10%\includegraphics [height=0.1\textheight]{lion}\includegraphics [height=0.1\textheight]{mountain}\includegraphics [height=0.1\textheight]{oscilloscope}% 设置宽度为当前页面正文区域宽度的10%\includegraphics[width=0.2\textwidth]{lion}\includegraphics[width=0.2\textwidth]{mountain}\includegraphics [width=0.2\textwidth]{oscilloscope}% 同时指定多个参数,用“,”隔开每个参数\includegraphics[angle=-45,width=0.2\textwidth]{lion}\includegraphics[width=0.2\textwidth]{mountain}\includegraphics[angle=45,width=0.2\textwidth]{oscilloscope}\end{document}
注:
1.在LaTeX中是通过“graphicx”包实现插图的,因此需要使用“usepackage”命令进行导入。
2.然后在文档中使用“includegraphics”插入图像,该命令的必选参数用于指定图像的文件名,其可选参数可用于指定图像的缩放比例、旋转等参数。
3.当使用“XeLaTeX”进行编译时,“graphicx”支持多种图像的格式。
4.还可以通过“graphicspath”命令指定图像的搜索路径,将图像等资源文件进行分文别类地管理。
5.使用“includegraphics”指定图片的名字。
由于本人没有相应的图片,并没有去执行程序,需要时再根据程序进行修改。另外,关于图片的其他参考信息请如下图去文档“graphicx”中进行查询。(居然是英文文档,不太想用。)
texdoc graphicx # 打开“graphicx”帮助文档
十、LaTeX中的表格
这一讲我们主要讨论LaTeX中表格的制作和排版问题。首先,创建一个文件(图中的“LaTeX_Learn_10.tex”)并保存。
然后编写LaTeX文档并运行。(在LaTeX中可以使用“tabular”环境生成表格,其中“l、c、r”分别表示左对齐、居中和右对齐,不同列间使用“&”符号进行分割,使用“\”进行分行。)
% 导言区
\documentclass{ctexart} % ctexbook,ctexrep% \usepackage{ctex}%正文区(文稿区)
\begin{document}\begin{tabular}{l c c c r}姓名 & 语文 & 数学 & 外语 & 备注 \\张三 & 87 & 100 & 93 & 优秀 \\李四 & 75 & 64 & 52 & 补考另行通知 \\王二 & 80 & 82 & 78 & \\\end{tabular}
\end{document}
然后进行下面的操作并运行:然后在列格式说明里使用“|”产生表格竖线,使用“||” 产生表格双竖线,使用“\hline”产生表格横线,使用“\hline \hline”产生表格双横线。在列格式中使用“p”产生指定表列的宽度,需要说明的是,由“p”指定的列格式宽度,当内容超过宽度时会自动产生换行。(注:在列格式说明中,空格不起作用)
% 导言区
\documentclass{ctexart} % ctexbook,ctexrep
% \usepackage{ctex}
% \begin{tabular}[<垂直对齐方式>]{<列格式说明>}
% <表项> & <表项> & … & <表项> \
% …
% \end{tabular}
% 用\表示换行
% 用&表示不同的列
% l-本列左对齐
% c-本列居中对齐
% r-本列右对齐
% p{<宽>}-本列宽度固定,能够自动换行
%正文区(文稿区)
\begin{document}
\begin{tabular}{|l||c|c|r|p{1.5cm}|}
\hline
姓名 & 语文 & 数学 & 外语 & 备注 \
\hline \hline
张三 & 87 & 100 & 93 & 优秀 \
\hline
李四 & 75 & 64 & 52 & 补考另行通知 \
\hline
王二 & 80 & 82 & 78 & \
\hline
\end{tabular}
\end{document}
除了本次所画的表格,也可以使用三线表格、跨页长表格等复杂表格,可以使用对应的宏包完成表格的创建。
十一、LaTeX中的浮动体
在LaTeX中,可以使用宏包“graphicx”中的“includegraphics”命令插入图像,使用环境“tabular”创建表格,但是要灵活地实现对图像和表格地管理,还需要使用浮动提环境。
首先,创建一个文件(图中的“LaTeX_Learn_11.tex”)并保存。
然后编写LaTeX程序并运行。
% 导言区
\documentclass{ctexart} % ctexbook,ctexrep%\usepackage{ctex}
\usepackage{graphicx}
%\graphicspath{{figures/}} % 图片在当前目录下的figures目录
\usepackage{verbatim} % 多行注释的宏包\begin{comment} % 多行注释
浮动体的作用:
- 实现灵活分页(避免无法分割的内容产生的页面留白)
- 给图表添加标题
- 交叉引用浮动体的使用方法:
figure环境(table环境与之类似)\begin{figure}[<允许位置>]< 任意内容 >\end{figure}浮动体的位置参数:
<允许位置>参数(默认tbp)
- h,此处(here)-代码所在的上下文位置
- t,页顶(top)-代码所在页面或之后页面的顶部
- b,页底(bottom)-代码所在页面或之后页面的底部
- p,独立一页(page)-浮动页面标题控制(caption、bicaption等宏包)
并排与子图表(subcaption、subfig、floatrow等宏包)
绕排(picinpar、wrapfig等宏包)
\end{comment} % 正文区(文稿区)
\begin{document}% \LaTeX{}中\TeX 系统吉祥物---小狮子见图\ref{fig-lion}。
% \begin{figure}[htbp]
% \centering
% \includegraphics[scale=0.3]{lion}
% \caption[]{\TeX 系统吉祥物---小狮子}\label{fig-lion}
% \end{figure}在\LaTeX{}中考试成绩单如表\ref{table-score}所示。\begin{table}[h]\centering\caption[]{考试成绩单}\label{table-score}\begin{tabular}{|l|c|c|c|r|}\hline姓名 & 语文 & 数学 & 外语 & 备注 \\\hline张三 & 87 & 100 & 93 & 优秀 \\\hline李四 & 75 & 64 & 52 & 补考另行通知 \\\hline王二 & 80 & 82 & 78 & \\\hline\end{tabular}\end{table}\end{document}
需要说明的是:
1.在LaTeX中,有“figure”、“table”浮动体环境,可以将“includegraphics”命令放入“figure”浮动体环境中,同样的,可以将生成表格的“tabular”环境放入“table”浮动体环境中。
2.当然,可以使用“centering”命令使图片或者表格居中。
3.还可以通过可选参数“htbp”指定表格或者图片的位置,没有该参数,观察本次的程序,会发现类似“在\LaTeX{}中的表格:”的命令会显示到表格的下面。
4.在图或者表的浮动体环境中可以通过“caption”命令插入自动带有编号图或者表的标题。
5.可通过“label”命令为浮动体设置标签,然后可利用“ref”命令引用该标签,从而实现交叉引用。
十二、LaTeX数学公式初步
本节主要讨论在LaTeX排版数学公式的问题。 首先,创建一个文件(图中的“LaTeX_Learn_12.tex”)并保存。然后编写LaTeX文档并运行。(注意阅读注释和结果进行理解。)
% 导言区
\documentclass{article}\usepackage{ctex}
\usepackage[]{amsmath} %“equation*”环境需要使用宏包“amsmath”导入%正文区(文稿区)
\begin{document}\section{简介}\LaTeX{}将排版内容分为文本模式和数学模式。文本模式用于普通文本排版,数学模式用于数学公式排版。\section{行内公式的3种表示方法}\subsection{美元符号}交换律是$a+b=b+a$,如$1+2=2+1=3$。\subsection{小括号} 交换律是\(a+b=b+a\) ,如\(1+2=2+1=3\)。\subsection{math环境} 交换律是\begin{math}a+b=b+a\end{math},如\begin{math}1+2=2+1=3\end{math}。\section{上标与下标}\subsection{上标} \noindent % 首行不缩进\hangafter 0 % 从n+1 行开始有效\hangindent 2em % 向右移动的距离$3x^{20} -x+2=0$ \\$3x^{ 3x^{ 20 }-x+2 } -x+2=0$注意:如何想将一个不止一个字符的数字或者数学表达式设为上标或下标,请使用“\{\}”的选定范围。\subsection{下标} \noindent \hangafter 0 \hangindent 2em % 向右移动的距离$a_0,a_1,a_2$ \\$a_0,a_1,a_2,...,a_{3x^{20}-x+2}$ \section{希腊字母}\noindent \hangafter 0 \hangindent 2em % 向右移动的距离% \quad:一个TAB键的空格$\alpha$\quad $\beta$\quad $\gamma$\quad $\epsilon$ \\$\pi$\quad $\omega$\quad $\Gamma$\quad $\Delta$ \\$\Theta$\quad $\Pi$\quad $\Omega$ \\$\alpha^3 + \beta^2 + \gamma =0$\section{数学函数}\noindent \hangafter 0 \hangindent 2em % 向右移动的距离$\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}$ $\sqrt{2 + \sqrt{2}}$$\sqrt[4]{x}$ \\注意:sqrt可通过指定可选参数,也能指定开方的次数\section{分式}\noindent \hangafter 0 \hangindent 2em % 向右移动的距离大约是原体积的$3/4$。 \\大约是原体积的$\frac{3}{4}$ \\ 注意:frac第一个参数是分子,第二个参数是分母$\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{行间公式}\noindent \hangafter 0 \hangindent 2em % 向右移动的距离\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*} 注:此时也可以通过“label”、“ref”命令进行引用;另外它的编号是根据章节进行编号的;“equation*”需要使用宏包“amsmath”。公式的编号与交叉引用是自动实现的,大家在排版中,要习惯于采用自动化的方式处理诸如图、表、公式的编号与交叉引用。
\end{document}
以下图片为本节LaTeX代码运行的结果,代码是本人根据b站视频获取的,仅有少量解释上的添加。
十三、LaTeX数学公式的矩阵
本节主要讨论在LaTeX的数学模式中如何排版矩阵的问题。首先,创建一个文件(图中的“LaTeX_Learn_13.tex”)并保存。
然后编写LaTeX文档并运行,注意对比代码与结果并进行理解。
% 导言区
\documentclass{article} \usepackage{ctex}
\usepackage[]{amsmath} % 使用矩阵前需引入此宏包% 定义左下到右上的省略号“adots”
\newcommand{\adots}{\mathinner{\mkern2mu\raisebox{0.1em}{.}\mkern2mu\raisebox{0.4em}{.}\mkern2mu\raisebox{0.7em}{.}\mkern1mu}}%正文区(文稿区)
\begin{document}% “matrix”等环境建立矩阵,使用方法与“tabular”创建表格的方法相似% 矩阵环境,用&分隔列,用\\分隔行\section{矩阵的分隔符}\subsection{不加括号(无定界符)的矩阵(matrix)}\[\begin{matrix}0 & 1 \\1 & 0\end{matrix}\]\subsection{加小括号的矩阵(pmatrix)}\[\begin{pmatrix}0 & -i \\i & 0\end{pmatrix} \]\subsection{加中括号的矩阵(bmatrix)}\[\begin{bmatrix}0 & -i \\i & 0\end{bmatrix}\]\subsection{加大括号的矩阵(Bmatrix)}\[\begin{Bmatrix}0 & -i \\i & 0\end{Bmatrix} \]\subsection{加单竖线的矩阵(vmatrix)}\[\begin{vmatrix}0 & -i \\i & 0\end{vmatrix} \]\subsection{加双竖线的矩阵(Vmatrix)}\[\begin{Vmatrix}0 & -i \\i & 0\end{Vmatrix} \]\section{矩阵中元素的上下标} \[A =\begin{pmatrix}a_{11}^2 & a_{12}^2 & a_{13}^2 \\0 & a_{22} & a_{23} \\0 & 0 & a_{33}\end{pmatrix}\]\section{矩阵中的省略号} % 矩阵中的常用省略号:\dots、\vdots、\ddots,注意根据显示结果区别这几个省略号% 左下到右上的省略号需要自己去引言区中定义,本次取名为“adots”\[A =\begin{pmatrix}a_{11} & \dots & a_{1n} \\\adots & \ddots & \vdots \\0 & & a_{nn}\end{pmatrix}_{n \times n} % 使用“times”排版乘号\]\section{分块矩阵(矩阵嵌套)} \[\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}\]\section{三角矩阵} \[\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}} % "multicol-umn"可以合并多列,“raisebox”可以调整高度& & a_{nn}\end{pmatrix}\]\section{跨列省略号} % 语法:\hdotsfor{<列数>},选定的列数显示横着的省略号\[\begin{pmatrix}1 & \frac 12 & \dots & \frac 1n \\\hdotsfor{4} \\m & \frac m2 & \dots & \frac mn\end{pmatrix}\]\section{行内小矩阵(smallmatrix环境)}复数 $z=(x,y)$ 也可用矩阵\begin{math}\left( % 需要手动加上左括号\begin{smallmatrix}x & -y \\y & x\end{smallmatrix}\right) % 需要手动加上右括号\end{math}来表示。\section{array环境(格式类似于表格环境tabular)}\subsection{普通矩阵}\[\begin{array}{r|r}\frac 12 & 0 \\\hline0 & -\frac abc \end{array}\]\subsection{复杂矩阵}% 用array环境构造复杂矩阵\[% @{<内容>}-添加任意内容,不占表项计数% 此处添加一个负值空白,表示向左移-5pt的距离\begin{array}{c@{\hspace{-5pt}}l} % 第一列居中,最后一列靠右对齐% 整个形式看成2*2的矩阵 每个子块再有矩阵或者长括号构成% 第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 \\% "multicolumn"可以合并多列,“raisebox”可以调整高度\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% underbrace:下方的横向大括号 rule指定尺寸\end{array} & % 第2行第2列\end{array}\]
\end{document}
十四、LaTeX数学公式的多行公式
这一节主要讲LaTeX中多行公式的排版的方法。首先,创建一个文件(图中的“LaTeX_Learn_14.tex”)并保存。
然后编写LaTeX文档并运行,注意对比代码与结果并进行理解。(注:1.“amsmath”宏包是用于LaTeX文档中数学排版的一个重要宏包。它提供了一系列功能和命令,用于创建复杂的数学公式、方程和排列。2. “amssymb”宏包用于扩展数学符号和字体选项。它提供了许多额外的数学符号、字母和其他数学相关的功能,使得在LaTeX文档中排版数学内容更加丰富和多样化。)
% 导言区
\documentclass{article}
\usepackage{ctex}\usepackage{amsmath}
\usepackage{amssymb}% 正文区(文稿区)
\begin{document}% 1.通过“gather”环境可实现带编号的多行公式的排版\section{带编号的gather}\begin{gather} a+b=b+a \\ab ba\end{gather}% 2.通过“gather*”环境可实现不带编号的多行公式的排版\section{不带编号的gather*}\begin{gather*} 3+5=5+3=8 \\3 \times 5 = 5 \times 3\end{gather*}% 3.在“gather”环境的“\\”前可以使用“\notag”阻止编号\section{不带编号的gather}\begin{gather} 3^2+4^2=5^2 \notag \\5^2+12^2=13^2 \notag \\a2+b^2=c^2\end{gather} % 4.在“align”和“align*”环境中可将公式按指定位置对齐% -对齐位置由“&”指定\section{将公式按指定位置对齐} \subsection{带编号使用“align”} \begin{align}% 可以按等号、公式的起始位置对齐x & =t \cos t +1 \\ y & =2 \sin t\end{align}\subsection{不带编号使用“align*”} \begin{align*}x & =t & x & =\cos t & x & =t \\y & =2t & y & =\sin(t+1) & y & =\sin t\end{align*}% 5.使用环境“split”在“align”环境中实现一个公式的多行排版% -对齐位置由“&”指定\section{一个公式的多行排版(“split”)} % “equation”用于创建带有自动编号的数学公式 \begin{equation} \begin{split}\cos 2x &=\cos^2 x-\sin 2 x \\&=2 \cos^2 x-1\end{split}\end{equation}% 6.使用环境“cases”完成分段函数的排版 \section{分段函数的排版(“cases”)} % 每行公式中使用&分隔为两部分,% 通常表示值和后面的条件\begin{equation}D(x)=\begin{cases}% text:切换成文本模式 in:属于符号 mathbb{Q}:花体Q setminus:“\”1,&\text{如果}x \in\mathbb{Q};\\0,&\text{如果}x \in \mathbb{R}\setminus\mathbb{Q}. % 请执行代码查看效果\end{cases}\end{equation}
\end{document}
十五、LaTeX中的参考文献BibTex
这一节主要讲LaTeX中使用“BibTex”工具排版参考文献的问题。
1.手动编写参考文献
首先,创建一个文件(图中的“LaTeX_Learn_15.tex”)并保存。
先如下编写部分代码并运行。
% 导言区
\documentclass{article}
\usepackage{ctex}% 正文区(文稿区)
\begin{document}% 1.对于简单的参考文献的排版需求,也就是一次管理,一次使用的参考文献\section{简单的参考文献的排版需求}% - 参考文献格式如下:% \begin{thebibliography}{编号样本}% \bibitem[记号]{引用标志}文献条目1% \bibitem[记号]{引用标志}文献条目2% ......% \end{thebibliography}% 其中文献条目包括:作者,题目,出版社,年代,版本,页码等。% 引用时候可以采用:\cite{引用标志1,引用标志2,...}引用一篇文章\cite{article1} 引用一本书\cite{book1}等等\begin{thebibliography}{99} % {99}:编号的宽度% bibitem:排版一条参考文献,需使用“{}”指定引用标志 emph:强调 % texttt:使文本以等宽字体的形式显示 \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{Amazon.com. Spend less. Smile more.}.\bibitem{latexMath} Graetzer George,\emph{Math Into \LaTeX},BirkhAuser Boston;3 edition (June 22,2000).\end{thebibliography}\end{document}
为了能让参考文献能够“一次管理,多次使用”,此要求可使用“BibTeX”工具进行实现。如下图所示,打开设置,然后在构建里讲“默认文献工具”设为“BibTeX”,当然,也可以去命令中进行更为详细的设置。
然后为了使用“BibTeX”工具,需针对参考文献去创建一个“.bib”参考文献数据库文件,再在对应文件中编写文献的详细信息。本次通过一个示例演示具体的做法,如下图所示,先创建一个数据库参考文件“test.bib”,并编写里面的代码。
% @BOOK:指定这是一本书籍参考文献
% {}中的第一个参数:引用标志(本次为“mittelbach2004”)
% 然后再通过title、publisher等关键字指定书名、出版商等详细信息,每一个字段使用“,”及进行分割
@BOOK{mittelbach2004,
title = {The {\LaTeX} Companion},
publisher = {Addison-Wesley},
year = {2004},
author = {Frank Mittelbach and Michel Goossens},
series = {Tools and Techniques for Computer Typesetting},
address = {Boston},
edition = {Second}
}
然后在“LaTeX_Learn_15.tex”中加入引用的代码并运行。
% 导言区
\documentclass{article}
\usepackage{ctex}\bibliographystyle{plain} % plain unsrt alpha abbrv
% 告诉LaTeX使用“plain”样式来排列和格式化文献引用。在这种样式下,引用将按照它们在文档中出现的顺序进行编号,然后按作者的姓氏字母顺序排列。% 正文区(文稿区)
\begin{document}% 1.对于简单的参考文献的排版需求,也就是一次管理,一次使用的参考文献\section{简单的参考文献的排版需求}% - 参考文献格式如下:% \begin{thebibliography}{编号样本}% \bibitem[记号]{引用标志}文献条目1% \bibitem[记号]{引用标志}文献条目2% ......% \end{thebibliography}% 其中文献条目包括:作者,题目,出版社,年代,版本,页码等。% 引用时候可以采用:\cite{引用标志1,引用标志2,...}引用一篇文章\cite{article1} 引用一本书\cite{book1}等等\begin{center} % 设为居中 效果:生成的"参考文献"标题居中\begin{thebibliography}{99} % {99}:编号的宽度% bibitem:排版一条参考文献,需使用“{}”指定引用标志 emph:强调 % texttt:使文本以等宽字体的形式显示 \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{Amazon.com. Spend less. Smile more.}.\bibitem{latexMath} Graetzer George,\emph{Math Into \LaTeX},BirkhAuser Boston;3 edition (June 22,2000).\end{thebibliography}\end{center}% 2.一次管理,多次使用的参考文献\section{一次管理,多次使用的参考文献}这是一个参考文献的引用:\cite{mittelbach2004}\begin{center} % 设为居中 效果:生成的"参考文献"标题居中\bibliography{test} % bibliography:用于引入参考文献数据库文件\end{center}\end{document}
2.借助镜像Google学术实现文献数据库的管理
手动编写参考文献是一件非常繁琐的事情,可借助镜像Google的引用实现文献数据库的管理。(也可以借助Zotero插件导出知网的文献的“BibTeX”数据,本人感觉麻烦,懒得去研究了)
如下图所示,直接进入镜像的“google学术”,然后搜索“bibtex”,点击需要引用的文献处的“引用”,点击“BibTeX”,就可以得到该文献的“BibTeX”数据。
然后将刚刚查到的“BibTeX”数据复制到数据库参考文件“test.bib”中。
% @BOOK:指定这是一本书籍参考文献
% {}中的第一个参数:引用标志(本次为“mittelbach2004”)
% 然后再通过title、publisher等关键字指定书名、出版商等详细信息,每一个字段使用“,”及进行分割
@BOOK{mittelbach2004,
title = {The {\LaTeX} Companion},
publisher = {Addison-Wesley},
year = {2004},
author = {Frank Mittelbach and Michel Goossens},
series = {Tools and Techniques for Computer Typesetting},
address = {Boston},
edition = {Second}
}@misc{patashnik1988designing,title={Designing BIBTEX styles},author={Patashnik, Oren},year={1988},publisher={February}
}
然后在“LaTeX_Learn_15.tex”中加入引用的代码并运行。
% 导言区
\documentclass{article}
\usepackage{ctex}\bibliographystyle{plain} % plain unsrt alpha abbrv
% 告诉LaTeX使用“plain”样式来排列和格式化文献引用。在这种样式下,引用将按照它们在文档中出现的顺序进行编号,然后按作者的姓氏字母顺序排列。% 正文区(文稿区)
\begin{document}% 1.对于简单的参考文献的排版需求,也就是一次管理,一次使用的参考文献\section{简单的参考文献的排版需求}% - 参考文献格式如下:% \begin{thebibliography}{编号样本}% \bibitem[记号]{引用标志}文献条目1% \bibitem[记号]{引用标志}文献条目2% ......% \end{thebibliography}% 其中文献条目包括:作者,题目,出版社,年代,版本,页码等。% 引用时候可以采用:\cite{引用标志1,引用标志2,...}引用一篇文章\cite{article1} 引用一本书\cite{book1}等等\begin{center} % 设为居中 效果:生成的"参考文献"标题居中\begin{thebibliography}{99} % {99}:编号的宽度% bibitem:排版一条参考文献,需使用“{}”指定引用标志 emph:强调 % texttt:使文本以等宽字体的形式显示 \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{Amazon.com. Spend less. Smile more.}.\bibitem{latexMath} Graetzer George,\emph{Math Into \LaTeX},BirkhAuser Boston;3 edition (June 22,2000).\end{thebibliography}\end{center}% 2.一次管理,多次使用的参考文献\section{一次管理,多次使用的参考文献}这是一个参考文献的引用:\cite{mittelbach2004}这是另一个引用:\cite{patashnik1988designing}\begin{center} % 设为居中 效果:生成的"参考文献"标题居中\nocite{*}% \nocite{*}:用于在文档的参考文献部分中列出所有在BibTeX数据库中的文献条目,而不仅仅是在文档正文中使用"cite"命令引用过的文献。\bibliography{test} % bibliography:用于引入参考文献数据库文件\end{center}\end{document}
注:本节还有一部分内容讲得有点复杂,或者现在使用方法有改动,比如Zotero插件的使用等(那个Zotero+茉莉花插件+PDFtk,试了半天,通过两个不同高校(这两个高校均已购买过知网)的账号使用Zotero插件下知网,都无法便捷导入。不知道哪里操作错了,对新手极不友好。当然,Zotero软件某些功能挺好的。),请自行观看视频,本人不想记录也懒得去搞了。
十六、LaTeX中的参考文献BibLaTeX(因卡在Zotero插件上,本节笔记未记完)
这一节主要讲LaTeX中使用“BibLaTeX”工具排版参考文献的方法,特点是:一次管理,多次使用。首先,创建一个文件(图中的“LaTeX_Learn_16.tex”)并保存。
然后为了使用“BibLaTeX”工具,需要进行相应的设置。如下图所示,打开设置,然后在构建里讲“默认文献工具”设为“Biber”。
因卡在Zotero插件上,本节笔记未记完。
十七、LaTeX中的自定义命令和环境
这一节主要讲LaTeX中命令和环境的定义与重定义的方法。一般都在导言区进行命令的定义与重定义。首先,创建一个文件(图中的“LaTeX_Learn_17.tex”)并保存。
然后编写LaTeX文档并运行,注意对比代码与结果并进行理解。
% 导言区
\documentclass{ctexart} % ctexbook,ctexrep% \newcommand-定义命令
% 命令只能由字母组成,不能以\end开头
% \newcommand<命令名字>[<参数个数>][<首参数默认值>]{<具体定义>}% 1.定义的命令可以是简单字符串替换,例如:
% - 使用\PRC相当于People's Republic of \emph{China}这一串内容
\newcommand\PRC{People's Republic of \emph{China}}% 2.命令可以使用参数
% 参数个数可以从1到9,使用时用#1,#2,·····,#9表示
\newcommand\loves[2]{#1 喜欢 #2}
\newcommand\hatedby[2]{#2 不受 #1 喜欢 }% 3.参数也可以有默认值
% 指定参数个数的同时指定了首个参数的默认值,那么这个命令的第一个参数就成为可选的参数(要使用中括号指定)
\newcommand\love[3][喜欢]{#2#1#3}% 4.\renewcommand -重定义命令
% 与\newcommand命令作用和用法相同,但只能用于已有命令
% \renewcommand<命令>[<参数个数>][<首参数默认值>]{<具体定义>}
\renewcommand\abstractname{内容简介}% 5.定义和重定义环境
% \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\hfil1--《\textit{\quotesource}》%\end{quotation}}%正文区(文稿区)
\begin{document}\PRC\loves{猫儿}{鱼} % “猫儿”替换“#1”,“鱼”替换“#2”\hatedby{猫儿}{萝卜} % “猫儿”替换“#1”,“萝卜”替换“#2”\love[最爱]{猫儿}{鱼} % “猫儿”替换“#2”,“#1”取默认值“最爱”,“鱼”替换“#3”\begin{abstract}这是一段摘要......\end{abstract}\begin{myabstract}[我的摘要]这是一段自定义格式的摘要...\end{myabstract}\begin{Quotation}{易$\cdot$乾}初九,潜龙勿用。\end{Quotation}定义命令和环境是进行\LaTeX{}格式定制、达成内容与格式分离mu标的利器。使用自定义的命令和环境把字体、字号、缩进、对齐、间距等各种琐细的内容包装起来,赋以一个有意义的名字,可以使文挡结构清晰、代码整洁、易于维护。在使用宏定义的功能时,要综合利用各种已有的命令、环境、变量等功能,事实上,前面所介绍的长度变量与盒子、字体字号等内容,大多并不直接出现在文档正文中,而主要都是用在实现各种结构化的宏定义里。
\end{document}
好了,本次笔记到此结束,谢谢大家阅读。