latex 分页_LaTeX从入门到提高(4)

本文详细介绍了LaTeX中如何处理浮动体,包括数学公式的矩阵和多行展示,以及参考文献的引用方式。通过示例代码和实际效果,帮助读者深入理解LaTeX的高级用法。
摘要由CSDN通过智能技术生成

9.LaTex中的浮动体

代码:

% 导言区
documentclass{ctexart} % ctexbook, ctexrep

% 浮动体
% 实现灵活分页(避免无法分割的内容产生的页面留白)
% 给图表添加标题
% 交叉引用

% figure环境(table环境与之类似)
% begin{figure}[<允许位置>]
% 	< 任意位置 >
% end{figure}

% <允许位置>参数(默认tbp)
% h,此处(here)——代码所在的上下文位置
% t,页顶(top)——代码所在页面或之后页面的顶部
% b,页底(bottom)——代码所在页面或之后页面的底部
% p,独立一页(page)——浮动页面

% 标题控制(caption、bicaption等宏包)
% 并排与子图表(subcation、subfig、floatrow等宏包)
% 绕排(picinpar、wrapfig等宏包)

%usepackage{ctex}
usepackage{graphicx}
graphicspath{{figures/},{pics/}} % 图片在当前目录下的 figures 目录

% 正文区(文稿区)
begin{document}
	LaTeX{}中的插图:
	
	LaTeX{}中TeX 系统的吉祥物---小狮子见图ref{fig-lion}。
	begin{figure}[htbp]
		centering
		includegraphics[scale=0.3]{lion.jpg}
		caption{TeX 系统的吉祥物---小狮子 }label{fig-lion}
	end{figure}		
	
	当然,在LaTeX{}中也如以使用表ref{tab-score}所示的表格:
	begin{table}[h]
		centering
		caption{考试成绩单}label{tab-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}

效果:

ddf81ea9ffe0acf48ff900c0c615ebd7.png

10.LaTeX中的数学公式初步

代码:

% 导言区
documentclass{article} % ctexbook, ctexrep

usepackage{ctex}
usepackage{amsmath}

% 正文区(文稿区)
begin{document}
	section{简介}
	LaTeX{}将排版内容分为文本模式和数学模式。文本模式用于普通文本排版,数学模式用于数学公式排版。
	section{行内公式}
	
	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+aend{math},如 begin{math}1+2=2+1=3end{math}。
	section{上下标}
	subsection{上标}
	$3x^{20} - x + 2 =0$
	
	$3x^{3x^{20} - x + 2 =0} - x + 2 =0$
	subsection{下标}
	$a_0, a_1, a_2$
	
	$a_0, a_1, a_2, ..., a_{3x^{20} - x + 2 =0} $ 
	section{希腊字母}
	$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}$
	
	$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}

效果(部分):

c6482986aa154ec640290e0b8ef8705c.png

47818e35165fa3c82d8f938cf288166b.png

aa98511f80d338468ed1d481e52b02a1.png

11.LaTeX数学公式的矩阵

代码:

% 导言区
documentclass{ctexart} % ctexbook, ctexrep

%usepackage{ctex}
usepackage{amsmath}

newcommand{adots}{mathinner{mkern2mu%
		raisebox{0.1em}{.}mkern2muraisebox{0.4em}{.}%
		mkern2muraisebox{0.7em}{.}mkern1mu}}

% 正文区(文稿区)
begin{document}
	% 矩阵环境,用&分隔列,用分隔行
	[
	begin{matrix}
	0 & 1 
	1 & 0
	end{matrix} qquad
	% pmatrix环境
	begin{pmatrix}
	0 & -i 
	i & 0
	end{pmatrix} qquad
	% bmatrix环境
	begin{bmatrix}
	0 & -1 
	1 & 0
	end{bmatrix} qquad
	% Bmatrix环境
	begin{Bmatrix}
	1 & 0 
	0 & -1
	end{Bmatrix} qquad
	% vmatrix环境
	begin{vmatrix}
	a & b 
	c & d
	end{vmatrix} qquad
	% Vmatrix环境
	begin{Vmatrix}
	a & b 
	c & d
	end{Vmatrix} 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、adots
	[
	A = begin{bmatrix}
	a_{11} & dots & a_{1n} 
	adots & ddots & vdots 
	0 & & a_{nn}
	end{bmatrix}_{n times n}
	]	
	
	% 分块矩阵(矩阵嵌套)
	[
	begin{pmatrix}
	begin{matrix}	1 & 0  0 & 1	end{matrix}
	& text{Large 0} 
	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}
	end{pmatrix}
	]
	
	% 跨列的省略号:hdotsfor{<列数>}
	[
	begin{pmatrix}
	1 & frac 12 & dots & frac 1n 
	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}

效果(部分):

d0d8abd67ba145e19c2c54db2387ad7e.png

e6a1850e182319bb60743c4ed890c56b.png

12.LaTeX数学公式的多行公式

代码:

% 导言区
documentclass{ctexart} % ctexbook, ctexrep

% usepackage{ctex}
usepackage{amsmath}
usepackage{amssymb}

% 正文区(文稿区)
begin{document}
	% gather 和 gather* 环境(可以使用换行)
	% 带编号
	begin{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 &= 2sin t
	end{align}
	% 不带编号
	begin{align*}
	x &= t & x &= cos t & x &= t 
	y &= 2t & y &= sin(t+1) & y &= sin t
	end{align*}
	
	% split 环境 (对齐采用 align 环境的方式,编号在中间)
	begin{equation}
	begin{split}
	cos 2x &= cos^2 x - sin^2 x 
	&= 2cos^2 x - 1
	end{split}
	end{equation}
	
	% cases环境
	% 每行公式中使用 & 分隔为两部分,
	% 通常表示值和后面的条件
	begin{equation}
	D(x) = begin{cases}
	1, & text{如果} in mathbb{Q}; 
	0, & text{如果} in mathbb{R}setminusmathbb{Q}.
	end{cases}
	end{equation}
	
end{document}

效果:

fd74be9a234014d3a99e8c17dcafbf64.png

13.LaTeX中的参考文献BibTex

代码:

% 导言区
documentclass{ctexart} % ctexbook, ctexrep

% usepackage{ctex}
usepackage{amsmath}
usepackage{amssymb}

% 正文区(文稿区)
begin{document}
	% 一次管理,一次使用
	% 参考文献格式:
	% begin{thebibliography}{编号样本}
	% 	bibitem[记号]{引用标志}文献条目1
	%   bibitem[记号]{引用标志}文献条目2
	%   ......
	% end{thebibliography}
	% 其中文献条目包括:作者,题目,出版社,年代,版本,页码等。
	% 引用时候要可以采用:cite{引用标志1,引用标志2,...}
	引用一篇文章cite{articlel}   引用一本书cite{book1}等等
	
	begin{thebibliography}{99}
		bibitem{articlel}陈立辉,苏伟,蔡川,陈晓云.emph{基于LaTeX的Web数学公式提取方法研究}[J].计算机科学. 2014(06)
		bibitem{book1}William H. Press,Aaul 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{http://www.amazon.com}.
		bibitem{latexMath} Graetzer George, emph{Math Into LaTeX}, BirkhAMuser Boston;3 edition(June 22,2000).
	end{thebibliography}

end{document}

效果:

096bd84e1dddddca94fe5a385aa1c8c7.png

14.LaTeX中的参考文献BibLaTeX

(将来用到时再仔细学习,这里略过)

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

代码:

% 导言区
documentclass{ctexart} % ctexbook,ctexrep

% newcommand-定义命令
% 命令只能由字母组成,不能以end 开头
% newcommand<命令>[<参数个数>][<首参数默认值>]{<具体定义>}
newcommandPRC{People's Republic of emph{China}}

% newcommand也可以使用参数
% 参数个数可以从1到9,使用时用 #1,#2,......,#9表示
newcommandloves[2]{#1 喜欢 #2}
newcommandhateby[2]{#2 不受 #1 喜欢}

% newcommand的参数也可以有默认值
% 指定参数个数的同时指定了首个参数的默认值,那么这个命令的
% 第一个参数就可以成为可选的参数(要使用中括号指定)
newcommandlove[3][喜欢]{#2#1#3}

% renewcommand-重定义命令
% 与newcommand命令作用和用法相同,但只能用于已有命令
% renewcommand<命令>[<参数个数>][<首参数默认值>]{<具体定义>}
renewcommandabstractname{内容简介}

% 定义和重定义环境
% newenvironment{<环境名称>}[<参数个数>][<首参数默认值>]
%                {<环境前定义>}
%                {<环境后定义>}
% renewenvironment{<环境名称>}[<参数个数>][<首参数默认值>]
%                  {<环境前定义>}
%                  {<环境后定义>}

% 为 book 类中定义摘要(abstract)环境
newenvironment{myabstract}[1][我的摘要] %
{small
	begin{center}bfseries #1end{center} %
	begin{quotation}} %
	{end{quotation}}

% 环境参数只有<环境前定义>中可以使用参数,
% <环境后定义>中不能再使用环境参数。
% 如果需要,可以先把前面得到的参数保存在一个命令中,在后面使用:
newenvironment{Quotation}[1] %
{newcommandquotesource{#1} %
    begin{quotation}} %
    {parhfill--- 《textit{quotesource}》 %
    end{quotation}} 


% 正文区(文稿区)
begin{document}
	PRC
	
	loves{猫儿}{鱼}
	
	hateby{猫儿}{萝卜}
	
	love{猫儿}{鱼}
	
	love[最爱]{猫儿}{鱼}
	
	begin{abstract}
		这是一段摘要...
	end{abstract}

	begin{myabstract}
		这是一段自定义格式的摘要...
	end{myabstract}

	begin{Quotation}{易$cdot$乾}
		初九,潜龙勿用。
	end{Quotation}

	定义命令和环境是进行LaTeX{}格式定制、达成内容与格式分离目标的利器。使用自定义的命令和环境把字体、字号、缩进、对齐、间距等各种琐细的内容包装起来,赋予一个有意义的名字,可以使文档结构清晰、代码整洁、易于维护。在使用宏定义的功能时,要综合利用各种已有的命令、环境、变量等功能,事实上,前面所介绍的长度变量与盒子、字体号等内容,大多并不直接出现在文档正文中,而主要是用在实现各种结构化的定义里。
	
end{document}

效果:

13bf6c8540a1e4d8b354c803b7030763.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值