LaTeX快速入门(超详细~)

文章目录

  • LaTeX快速入门
    • 前言
    • 1.LaTeX源文件的基本结构
    • 2.LaTeX中的中文处理方法
    • 3.字体字号设置
      • 3.1. 字体族设置
      • 3.2.字体系列设置(粗细、宽度)
      • 3.3.字体形状设置
      • 3.4.中文字体设置
      • 3.5.字体大小设置
    • 4.LaTeX文档的基本结构
    • 5.特殊字符
    • 6.插图
    • 7.表格
    • 8.浮动体
    • 9.数学公式初步
    • 10.矩阵
    • 11.多行公式
    • 12.LaTeX中的参考文献BibTex
    • 13.LaTeX中的参考文献BibLaTeX
    • 14.LaTeX中定义新命令和环境

LaTeX快速入门

前言

这是一篇LaTeX快速入门的学习笔记。
编译环境:LaTeX + TeXstudio
学习视频来源于:【1天玩转LaTeX】【写论文不怕格式出错啦!!!】【耿楠教授授权发布】_哔哩哔哩_bilibili

特别鸣谢:耿楠老师的详细讲解

1.LaTeX源文件的基本结构

LaTex文件由导言区和==正文区(文稿区)==构成

导言区:用于全局设置

title:标题

author:作者

date:时间

正文区

\maketitle:显示标题

$内:数学模式

$外:文本模式

也可以用$$表示数学模式,这样操作会让公式令起一行显示

可通过增加空行来实现分段显示

即单$表示:行内公式

双$表示:行间公式

%导言区
\documentclass{article} %引入一个文档类:book,report,letter
\title{My First Document}
\author{Poem}
\date{\today}
%正文区
\begin{document}
	\maketitle
	Hello world! 
	
	Let $f(x)$ be defined by formula:
	%here is my big formula
	$$f(x)=3x^2+x-1$$ which is a polynomial of degree 2.
\end{document}

LaTeX快速入门(超详细~)_第1张图片

2.LaTeX中的中文处理方法

%导言区
\documentclass{article} %引入一个文档类:book,report,letter
\usepackage{ctex}%引入中文宏包

%\documentclass{ctexart}

\newcommand\degree{^\circ}

\title{\heiti 杂谈勾股定理}
\author{\kaishu 张三}
\date{\today}
%正文区
\begin{document}
	\maketitle
	勾股定理可以用现代语言描述如下:
	
	直角三角形斜边的平方等于两条直角边的平方之和。
	
	可以用符号语言表述为:设直角三角形$ABC$,其中$\angle
	C=90\degree$,则有:
	%equation命令用于产生带编号的行间公式
	\begin{equation}
		AB^2 = BC^2 + AC^2.
	\end{equation}\label{key}
\end{document}

LaTeX快速入门(超详细~)_第2张图片

中文宏包CTEX手册

LaTeX快速入门(超详细~)_第3张图片

3.字体字号设置

3.1. 字体族设置

罗马字体、无衬线字体、打字机字体 \textrm

\rmfamily声明后续字体族

既可以使用字体命令,作用域命令参数,也可以使用字体声明,作用于后续的文本。可以用大括号,对字体进行分组,限定字体声明的作用范围。当遇到新的字体命令,会结束当前字体声明,启用新的字体声明。

\documentclass{article}

\usepackage{ctex}

\begin{document}
	\textrm{Roman Family} \textsf{Sans Serif Family} \texttt{Typerwriter Family}
	
	{\rmfamily Roman Family} {\sffamily Sans Serif Family} {\ttfamily Typerwriter Family}
	
	\sffamily A strong man can save himself, a great man can save another. %声明无衬线字体,则后续所有字体均为无衬线字体
	
	\ttfamily  I don't know if we each have a destiny, or if we're all just floating around accidentally―like on a breeze.%当遇到新的字体命令,会结束当前字体声明,启用新的字体声明。
\end{document}

LaTeX快速入门(超详细~)_第4张图片

标准格式:

\sign{方括号内为显示的对应字体}%sign表示对应指令

常用举例:

\rmfamily{罗马字体族}

\sffamily{无衬线字体族}

\ttfamily{打字机字体族}

\heiti{黑体}%注意中文字体需要加ctex宏包。

\songti {宋体}

这里不加的中括号话后面就全变成了"宋体"。

%更多设置可见 texdoc ctex (ctex宏包手册)

3.2.字体系列设置(粗细、宽度)

\textmd{Medium Series}  \textbf{Boldface Series}
{\mdseries Medium Series} {\bfseries Boldface Series}

在这里插入图片描述

3.3.字体形状设置

{\upshape Upright Shape}
{\itshape Italic Shape} 
{\slshape Slanted Shape}
{\scshape Small Caps Shape}
\textbf{abc}%粗体
\textit{abc}%斜体

在这里插入图片描述

在这里插入图片描述

3.4.中文字体设置

{\songti 宋体} \quad {\heiti 黑体} \quad {\fangsong 仿宋} \quad {\kaishu 楷书}

在这里插入图片描述

中文字体的\textbf{粗体}与\textit{斜体}

3.5.字体大小设置

	{\tiny Hello}\\
	{\scriptsize Hello}\\
	{\footnotesize Hello}\\
	{\small Hello}\\
	{\normalsize Hello}\\
	{\large Hello}\\
	{\Large Hello}\\
	{\LARGE Hello}\\
	{\huge Hello}\\
	{\Huge Hello}\\

LaTeX快速入门(超详细~)_第5张图片

\documentclass[10pt/11pt/12pt]{article}
	%中文字号设置命令
	\zihao{-0} 你好! %参数赋0表示小字号
	\zihao{5} 你好!

LaTeX快速入门(超详细~)_第6张图片

:LaTeX的思想是格式与内容的分离,因此不建议在文档中使用大量的命令,而是用newcommand定义一个新的命令以执行相关的操作。

\newcommand{\myfont}{\textit{\texbf{\textsf{Fancy Text}}}
\myfont

在这里插入图片描述

当需要修改字体时,只需要修改已经定义的命令即可!

4.LaTeX文档的基本结构

section,subsection,subsubsection构建提纲(小节、子小节)

%导言区
\documentclass{ctexart} 
\usepackage{ctex}
\CTEXsetup[format={\Large\bfseries}]{section}%使\section中的内容左对齐

%正文区
\begin{document}
	\section{引言}
		Land is the only thing in the world worth working for, worth fighting for, worth dying for. Because it's the only thing that lasts. %验证正文不受section影响
	\section{实验方法}
	\section{实验结果}
	\subsection{数据}
	\subsection{图标}
	\subsubsection{实验条件}
	\subsubsection{实验过程}
	\subsection{结果分析}
	\section{结论}
	\section *{致谢}	%加*用于去掉自带的编号
\end{document}

LaTeX快速入门(超详细~)_第7张图片

: \ \ 换行,不会产生新的段落(没有首行缩进)

\par 命令:产生新的段落

但为了清晰,分段通常采用加空行的方法

当然\documentclass{ctexart} 用ctex文档类也是可以的

chapter按章节生成文档大纲

:1.文档类要用{ctexbook}

2.用chapter时,subsubsection就不起作用了。

\documentclass{ctexbook} 
\usepackage{ctex}
\CTEXsetup[format={\Large\bfseries}]{section}%使\section中的内容左对齐

%正文区
\begin{document}
	
	\chapter{绪论}
	\section{引言}
	Land is the only thing in the world worth working for, worth fighting for, worth dying for. Because it's the only thing that lasts.
	\section{实验方法}
	\section{实验结果}
	\subsection{数据}
	\subsection{图标}
	
	\chapter{实验}
	\subsubsection{实验条件}
	\subsubsection{实验过程}
	\subsection{结果分析}
	\section{结论}
	\section *{致谢}	%加*用于去掉自带的编号
\end{document}

LaTeX快速入门(超详细~)_第8张图片

LaTeX快速入门(超详细~)_第9张图片

\tableofcontents产生文档目录

%导言区
\documentclass{ctexbook} 
\usepackage{ctex}
\CTEXsetup[format={\Large\bfseries}]{section}%使\section中的内容左对齐

%正文区
\begin{document}
	
	\tableofcontents
	\chapter{绪论}
	\section{引言}
	\section{实验方法}
	\section{实验结果}
	\subsection{数据}
	\subsection{图标}
	
	\chapter{实验}
	\subsubsection{实验条件}
	\subsubsection{实验过程}
	\subsection{结果分析}
	\section{结论}
	\section *{致谢}	%加*用于去掉自带的编号
\end{document}

LaTeX快速入门(超详细~)_第10张图片

5.特殊字符

空白符号

:1.空行分段,多个空行等同于1个;

2.自动缩进,绝对不能使用空格代替;

3.英文中多个空格处理为1个空格,中文中空格将被忽略;

4.汉字与其他字符的间距会自动由XeLaTex处理;

5.禁止使用中文全角空格

\documentclass{article}
\usepackage{ctex}
\usepackage{xltxtra}%提供了针对XeTex的改进并且加入了XeTeX的LOGO
\usepackage{texnames} %一些LOGO
\usepackage{mflogo}

\begin{document}
	\section{空白符号}
	
	%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
	
	a\kern -1em b
	
	a\hskip 1em b
	
	a\hspace{35pt}b
	
	%占位宽度
	a\hphantom{xyz}b
	
	%弹性长度
	a\hfill b
	\section{\LaTeX 控制符}
	\# \$ \% \{ \} \~{} \^{} \textbackslash \&
	
	\section{排版符号}
	\S \P \dag \ddag \copyright \pounds
	
	\section{\TeX 标志符号}
	% t基本符号
	\TeX{} \LaTeX{} \LaTeXe{}
	
	%xltxtra宏包提供
	\XeLaTeX(需引入xltxtra宏包) 
	
	%texnames宏包提供
	\AmSTeX{} \AmS- \LaTeX{} \BibTex{} \LuaTex{}
	
	%mflogo宏包提供
	\METAFONT{} \MF{} \MP{}
	
	\section{引号}
	`左单引号 '右单引号  ``左双引号  ''右双引号
	``你好"
	
	\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快速入门(超详细~)_第11张图片

LaTeX快速入门(超详细~)_第12张图片

LaTeX快速入门(超详细~)_第13张图片

6.插图

%导言区:\usepackage{graphicx}
%语法:\includegraphics[<选项>]{<文件名>}
%格式:EPS,PDF,PNG,JPEG,BMP
\usepackage{graphicx}
\graphicspath{{figures/},{pics/}} %图片在当前目录下的figures目录
\documentclass{article}
\usepackage{ctex}

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

\begin{document}
	\LaTeX{}中的插图
	\includegraphics[scale=0.3]{pictures/p1.jpg}
\end{document}

%[scale指的是比例],pictures选择的是和本系统在一起的文件夹,后面的图片p1.jpg是在pictures文件内。

注:

[可选参数]:scale(缩放因子)、height = 1cm(固定值的图像高度)、width=2cm(固定值的图像宽度)、height=0.1\textheight(版型0.1倍的图像高度)、width=0.2\textwidth(版型0.2倍的图像宽度)、angle=-45(旋转角度)

可同时指定多个可选参数,不同参数之间用逗号分隔

LaTeX快速入门(超详细~)_第14张图片

可以在运行中输入如下查看相应帮助文档

LaTeX快速入门(超详细~)_第15张图片

7.表格

**概要:**使用tabular环境生成表格,tabular环境需要一个指定列排版格式的必选参数{l c r p} l:左对齐;c:居中;r:右对齐;p:内容超过宽度时自动换行

语法:%\begin{tabular}[<垂直对齐方式>]{<列格式说明>}

% <表项>&<表项>&…&<表项> \ \

& 分割各列

11%…

%\end{tabular}

%用 \ \ 表示换行

%l -本列左边对齐

%c —本列居中

%r -本列右对齐

% p{<宽>}—本列宽度固定,可自动换行

打开宏包说明文件

LaTeX快速入门(超详细~)_第16张图片

跨页长表格

LaTeX快速入门(超详细~)_第17张图片

综合表格宏包

LaTeX快速入门(超详细~)_第18张图片

\documentclass{ctexart}

\begin{document}
	\begin{tabular}{| l || c | c | c | r} % 用 | 产生竖线,两个|可以产生双竖线,列格式说明中空格不起作用
		\hline %产生表格横线
		A组 & 队名 & 比分 & 备注\\
		\hline\hline %产生双横线
		1st & RNG & 6-0 & 出线\\
		\hline
		2nd & DK & 3-3 & 出线\\
		\hline
		3rd & T1 & 2-4 & 淘汰\\
		\hline
		4th & G2 & 1-5 & 淘汰\\	
		\hline	
	\end{tabular}
\end{document}

LaTeX快速入门(超详细~)_第19张图片

8.浮动体

**浮动体:**1.实现灵活分页(避免无法分割的内容产生的页面留白)

2.给图标添加标题

3.交叉引用

figure环境(table环境与之类似)

\begin{figure}[<允许位置>]
  < 任意内容 >
\begin{figure}

<允许位置>参数(默认top)

h,此处(here)——代码所在的上下文位置

t,页顶(top)——代码所在页面或之后页面的顶部

b,页底(bottom)——代码所在页面或之后页面的底部

p,独立一页(page)——浮动页面

标题控制(caption、bicaption等宏包)

并排与子图表(subcaption、subfig、floatrow等宏包)

绕排(picinpar、wrapfig等宏包)

\documentclass{ctexart}
\usepackage{graphicx}
\graphicspath{{figures/}}

\begin{document}
	%figure浮动体环境
	\LaTeX{}中的插图:\ref{fig-p1} %ref引用标签
	\begin{figure}[htbp] %通过可选参数指定浮动体的排版位置
		\centering %让环境中的内容居中
		\includegraphics[scale=0.3]{imgs/p1}
		\caption{\TeX 浮动体学习}\label{fig-p1} %caption设置标题,lable为浮动体设置标签
	\end{figure}	
	
	%table浮动体环境
	\LaTeX{}中的表格\ref{table-score}
	\begin{table}[h]
		\centering
		\caption{积分情况}\label{table-score}
		\begin{tabular}{| l || c | c | c | r} % 用 | 产生竖线,两个|可以产生双竖线,列格式说明中空格不起作用
			\hline %产生表格横线
			A组 & 队名 & 比分 & 备注\\
			\hline\hline %产生双横线
			1st & RNG & 6-0 & 出线\\
			\hline
			2nd & DK & 3-3 & 出线\\
			\hline
			3rd & T1 & 2-4 & 淘汰\\
			\hline
			4th & G2 & 1-5 & 淘汰\\	
			\hline	
		\end{tabular}
	\end{table}
	
\end{document}

LaTeX快速入门(超详细~)_第20张图片

9.数学公式初步

\documentclass{ctexart}
\usepackage{amsmath}

\begin{document}
	\section{简介}
	\LaTeX{}将排版内容分为文本模式和数学模式。文本模式用于普通文本排版,数学模式用于数学公式排版。
	
	\section{行内公式}
		\subsection{美元符号}
	交换律:$$a+b=b+a$$
		\subsection{小括号}
	交换律:\(a+b=b+a\)
	 	\subsection{math环境}
	交换律:\begin{math}a+b=b+a\end{math}
	
	\section{上下标}
	上:$x^{2x^{6}+1}+y=0$ \\
	下:$a_1,a_2,a_3...a_{100}$ 
	
	\section{希腊字母}
	$\alpha$
	$\beta$
	$\gamma$
	$\epsilon$
	$\omega$
	
	大写希腊字母:
	$\Gamma$
	$\Delta$
	$\Theta$
	$\Pi$
	$\Omega$
	
	\section{数学函数}
	$\log$
	$\sin$
	$\cos$
	$\arcsin$
	$\arccos$
	$\ln$ \\
	$y=\sin^{-1}x$ \\
	$y=log_2x$ \\
	$\sqrt[4]{x^2+y^2}$ %[]可选参数,开方次数
	
	\section{分式}
	$\frac{x}{x^2+x+1}$ \\ %第一个可选参数是分子,第二个是分母
	$\sqrt{\frac{x}{x^2+x}}$
	
	\section{行间公式}
		\subsection{美元符号}
	$$x+y=2$$ %使用双$
		\subsection{中括号}
	 \[x+y=2\] %同样效果
	 	\subsection{displaymath环境}
	 	\begin{displaymath}
	 		x+y=2
	 	\end{displaymath}
 	
	\section{自动编号公式equation环境}
	交换律见式\ref{eq:commutative} %交叉引用
		\begin{equation}
			a+b=b+a \label{eq:commutative}
		\end{equation}

	\section{不编号equation*环境}
	交换律见式:\ref{eq:commutative2}:
		\begin{equation*}
			a+b=b+a  \label{eq:commutative2}
		\end{equation*}
	%在公式末尾加\nonumber也可以去编号
	
\end{document}

公式的编号与交叉引用也是自动实现的,在排版中,要习惯采用自动化的方式处理诸如图、表、公式的编号与交叉引用。

LaTeX快速入门(超详细~)_第21张图片

LaTeX快速入门(超详细~)_第22张图片

LaTeX快速入门(超详细~)_第23张图片

10.矩阵

\documentclass{ctexart}
\usepackage{amsmath}

\begin{document}
	%矩阵环境,用&分割列,用\\分割行 每个矩阵前后需要加 \[ \]
	%注意\[ \] 里面无需空行
	\[
	\begin{matrix} %无定界符
		0&1\\
		1&0
	\end{matrix}
	\]
	\[
	A=\begin{pmatrix}%小括号
		a_{11}^2&a_{12}^2&a_{13}^2\\
		0&a_{22}&a_{23} \\
		0&0&a_{33}
	\end{pmatrix} 
	\]
	\[
	\\
	\begin{bmatrix}%中括号
		0&-1\\
		3&1
	\end{bmatrix}\\
	\begin{Bmatrix}%大括号
		0&-1\\
		3&1
		17
	\end{Bmatrix}
	\begin{vmatrix}%单竖线
		0&-1\\
		3&1
	\end{vmatrix}
	\begin{Vmatrix}%双竖线
		0&-1\\
		3&1
	\end{Vmatrix}
	\]
	%常用省略号: \dots 横向 \ddots 对角线 \vdots 竖线
	\[
	B=\begin{bmatrix}
		b_{11} & \dots & b_{1n}\\
		& \ddots & \vdots \\
		0 & \dots & b_{nn}
	\end{bmatrix}_{n\times n} %\times 是乘号 (X)
	\]
	%分块矩阵(矩阵镶套)
	\[
	C=\begin{pmatrix}
		\begin{matrix} 0&1\\1&-1 \end{matrix}
		& \text{\Large 0} \\ %text用于在数学模式中临时切换为文本模式
		\text{\Large 0} & \begin{matrix} 1&0 \\ 0& -2 \end{matrix}
	\end{pmatrix}
	\]
	% 括号包裹的矩阵
	\[\begin{pmatrix}
		a_{11}&a_{12}&\cdots&a_{ln}\\
		&a_{22}&\cdots&a_{2n}\\
		&		&\dots &\vdots \\
		\multicolumn{2}{c}{\raisebox{1.3ex}[0pt]{\Huge 0}} %muticolumn合并多列 raisebox调整高度
		&		&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 12&0\\
		\hline
		0& -\frac a{bc}\\
	\end{array}
	\]
	
\end{document}

LaTeX快速入门(超详细~)_第24张图片

11.多行公式

\documentclass{article}
\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 \\
		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 \\
		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\\
			&=2\cos^2 x-1
		\end{split}
	\end{equation}
	
	% case环境(实现分段函数的排版)
	% 每行公式中使用&分隔为两部分
	% 通常表示值和后面的条件
	% \text{}在数学模式中处理中文或者临时切换为文本模式
	\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}

LaTeX快速入门(超详细~)_第25张图片

12.LaTeX中的参考文献BibTex

方法一:

\documentclass{article}
\usepackage{ctex}
\begin{document}
	% 一次管理,一次使用
	% 参考文献格式:
	% \begin{thebibliography}{编号样本}
	% 	\bibitem[记号]{引用标志}文献条目1
	% 	\bibitem[记号]{引用标志}文献条目2
	% 	……
	% \end{thebibliography }
	% 其中文献条目包括:作者,题目,出版社,年代,版本,页码等。
	% 引用时候要可以采用:\cite{引用标志1,引用标志2,...}
	引用一篇文章\cite{article1},引用一本书\cite{book1}
	\begin{thebibliography}{99}
		\bibitem{article1}陈立耀,苏伟,蔡川,陈晓云.\emph{基于LaTex的Web数堂公式提取方法研究}[1]、让算机科学、2014(06)
		\bibitem{book1}william H. Press,saul A.Teukolsky, william T. Metterling, Brian P. Elannery,\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,lemph{Math Into \LaTeX},BirkhAuser Boston; 3 edition (une 22,2000).
	\end{thebibliography}
\end{document}

LaTeX快速入门(超详细~)_第26张图片
方法二:

1.对TeXstudio作如下设置:

LaTeX快速入门(超详细~)_第27张图片

默认文献工具选择BibTex

2.新建一个文件:test.bib,注意是以bib为后缀的。

@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}
}

3.在另一个文档中,引用这个bib文件。

\documentclass{article}
\usepackage{ctex}
\usepackage[round]{natbib} %使用natbib宏包,可以使用更多的排版样式,如plainnat;[参数]指定不同的参数,设置不同的排版格式,round 排版结果变成圆括号
%natbib宏包还提供了\citet和\citep命令
% 指定参考文献的排版样式:plain,unsrt,alpha,abbrv
\bibliographystyle{plain}
\begin{document}
	% 指定参考文献数据库,
	\bibliography{test}
	%添加cite引用命令,使用bib数据库文件中参考文献条目的引用标志,作为cite命令的参数
	这是一个文献的引用:\cite{mittelbach2004}
	这是另一个文献的引用:\cite{patashnik1988designing}
	% 引入bib文件,如果有多个bib文件,使用逗号隔开
%	\bibliography{book}
\end{document}

注:\usepackage[round]{natbib} %使用natbib宏包,可以使用更多的排版样式,如plainnat;[参数]指定不同的参数,设置不同的排版格式,round 排版结果变成圆括号
%natbib宏包还提供了\citet和\citep命令,用于设置不同的引用格式,更多细节可查阅宏包使用说明

LaTeX快速入门(超详细~)_第28张图片

手动维护bib文件是比较繁琐的并且是极易出错的,可以使用Google Scholar提供的功能,访问谷歌学术,随便搜索点东西,点击“引用”,再点击“BibTex”,即可看到信息。

LaTeX快速入门(超详细~)_第29张图片

LaTeX快速入门(超详细~)_第30张图片

按如上图所示操作可以得到相应文献bibtex格式的数据,可以直接将该数据拷贝到参考文献数据库中。

同样,也可以从知网检索中导入数据

13.LaTeX中的参考文献BibLaTeX

这种方法需要将TeXstudio作如下设置:

LaTeX快速入门(超详细~)_第31张图片

将默认文献工具设置为Biber

\documentclass{article}
% 引入biber宏包
\usepackage[style=numeric,backend=biber]{biblatex}
\usepackage{ctex}
% biblatex/biber
% 新的TEX参考文献排版引擎
% 样式文件(参考文献样式文件--bbx文件,引用样式文件--cbx文件)使用LATEX编写
% 支持根据本地化排版,如:
% biber -l zh__pinyin texfile,用于指定按拼音排序
% biber -l zh__stroke texfile,用于按笔画排序
% 在导言区添加bib数据库(后缀名不能省略)
\addbibresource{test.bib}
\begin{document}
	% 无格式化引用
	\cite{mittelbach2004}
	
	% 带方括号引用
	\parencite{mittelbach2004}
	
	% 上标引用
	\supercite{6-1}
	
	\nocite{*}
	
	\printbibliography
	
	% 默认是References,可以自定义
	\printbibliography[title={参考文献}]
\end{document}

14.LaTeX中定义新命令和环境

\documentclass{article}
\usepackage{ctex}
% \newcommand-定义命令
% 命令只能由字母组成,不能以\end开头
% \newcommand<命令>[<参数个数>][<首参数默认值>]{<具体定义>}

% \newcommand可以是简单的字符串替换,例如:
% 使用\PRC 相当于People's Republic of \emph{China}这串内容
\newcommand\PRC{People's Republic of \emph{China}}

% \newcommand也可以使用参数,就是把参数填充到#数字的地方
% 参数个数可以有1~9个,#1,#2表示第1、2个参数
% #1表示第一个参数,#2表示第二个参数
\newcommand\loves[2]{#1 喜欢 #2}
% 整体就是参数一喜欢参数二
% 参数采用位置参数,第二个传入的参数即为#2
\newcommand\hatedby[2]{#2 不受 #1 喜欢}

% \newcommand的参数可以有默认值
% 指定参数个数的同时指定了首个参数的默认值
% 第一个参数就成为可选的参数(要使用中括号指定)
% [3]表示有3个参数,第一个参数的默认值是“喜欢”
\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\hfil---\textit{\quotesource}}
	\end{quotation}
}

\begin{document}
	\begin{abstract}
		这是一段摘要
	\end{abstract}
	
	\begin{myabstract}[我的摘要]
		自定义摘要	\end{myabstract}
	
	\begin{Quotation}{练$\cdot$习}
		LaTeX快速入门
	\end{Quotation}
	
	\PRC
	
	\loves{猫}{鱼}
	
	\hatedby{猫}{萝卜}
	
	\love{猫}{鱼}
	
	\love[最爱]{猫}{鱼}
\end{document}

LaTeX快速入门(超详细~)_第32张图片

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

你可能感兴趣的:(LaTeX,latex,数学建模,排版)