700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 中文版Latex常用语法大全教程

中文版Latex常用语法大全教程

时间:2020-06-09 00:30:52

相关推荐

中文版Latex常用语法大全教程

中文版Latex常用语法大全教程

Latex语法格式中文版的“hello world”注释换行、分段、分页文字的粗体、斜体、颜色、大小下划线、双下划线、波浪线、删除线、斜删除线Latex文档层次结构Latex层次Latex封面Latex目录Latex摘要Latex关键字Latex引用Latex脚注Latex数学公式Latex数学图形Latex插入图片Latex插入表格Latex插入代码Latex文字加边框Latex段落文字加边框latex分栏Latex段落Latex空白字符Latex页面配置Latex页眉页脚Latex手写参考文献Latex使用BibTeX生成参考文献列表小结参考资料

Latex是一个基于Tex的文章,期刊,书籍的排版系统,可让使用者在极短的时间内写出很高排版质量的文档。

对于没有接触过Latex的同学来说,这种以代码形式进行文档书写的方式,会让人一头雾水,摸不到南北。

下面我以本人的视角来梳理《中文版Latex常用语法大全教程》,请大家一定要先浏览本文目录,目录一般呈现的都是文章大纲,对理解文章很有帮助。

不建议大家一开始就从头看到尾,而是在写作的过程中用到了那个知识点就去看那一点,这样更有助于学习。若是零基础的同学,我会再出一版《Latex快速入门》,请持续关注哦。

不过在开始本文前,需要各位同学配好自己的环境,我的环境配置,请参考我的另一篇文章《ubuntu20.04下vim+vimtex编写latex的利器》,本文的所有演示用例,都是基于该环境实现的。

数学用的平面几何图形绘制,请参考我的另外文章

《Latex-TiKZ绘制数学平面几何图教程》《Latex-pgfplots绘制3维曲线图》

Latex语法格式

在开始本文之前,请先熟悉下,Latex的行文结构,这也是最基本的,作为一个程序员来说,每开始一个新的编程语言学习时,都要先了解该程序语言的结构,那样才能快速编程。

\documentclass[options]{class}\begin{document}% 录入正文内容\end{document}

参数

options   定制文档类的属性,不同的选项之间须用逗号隔开。clsss   指定文档类型,如:book、report、article、letter等。

注意:本文所有的教程都是基于中文环境的Latex文档编写。

Latex的中文环境配置请参考我的另一篇文章《ubuntu20.04下vim+vimtex编写latex的利器》。

中文版的“hello world”

让我们来创建第一个文档,中文版的“hello world”,使用vim编写test.tex文档,录入如下代码

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\begin{document}hello 中国\end{document}

编好后,在vim的命令行模式下,按“\ll”进行编译并预览,每次更改代码并重新保存后,都会实时更新预览界面。如下图:

是不是很简单啊,让我们期待在本文的帮助下,畅游Latex文档编写的世界吧。

注释

Latex也如 C语言等编程语言一样,也有单行和多行注释

单行,以%开头的行,是单行注释多行,(不要忘记添加多行注释用的包,\usepackage{verbatim}) \begin{comment}多行注释内容\end{comment}

示例

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\usepackage{verbatim}\begin{document}%单行注释hello 中国\begin{comment}这是一个注释行这又是一行注释hehe\end{comment}\end{document}

换行、分段、分页

换行

\\   换行\newline   与\\相同注意,这里的换行,都是在段内换行

分段

\par   添加在段落末尾或另起一行进行分段在段落后连续两个回车,也可以实现分段效果(推荐的方式)

分页

\newpage   添加在段落末尾或另起一行进行分页

示例

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\usepackage{verbatim}\begin{document}%换行三更\\灯火五更鸡,正是男儿读书时。\par\noindent 黑发不知勤学早,\newpage白首方悔读书迟。\end{document}

效果图如下

文字的粗体、斜体、颜色、大小

粗体

\textbf{文字}

斜体

\emph{文字},(备注,中文文档里面斜体配置没有成功,以后有时间再改进)

颜色,有 3种方式可选

直接使用定义好的颜色

1. \usepackage{color}

2. \textcolor{red/blue/green/black/white/cyan/magenta/yellow}{text}

3. % 其中textcolor{…}中包含的是系统定义好的颜色组合red、green和blue的值合成我们想要的颜色 \usepackage{color}\textcolor[RGB]{R,G,B}{text}% 其中{R,G,B}代表red、green和blue三种颜色的组合,取值范围为[0-255] 定义一种颜色,直接调用 \usepackage{color}\definecolor{ColorName}{RGB}{R,G,B} % 这时R/G/B的定义域就在[0-255]\textcolor{ColorName}{text}这里为颜色定义了名称ColorName,下面可以直接调用这个颜色方案

大小

全局模式 \documentclass[12pt]{article} 局部模式 根据既有命令设置 命令:\tiny、\scriptsize、\footnotesize、\small、\normalsize、\large、\Large、\LARGE、\huge、\Huge示例,\tiny{Latex},注意命令跟文字之间有空格 自定义修改字体大小和尺寸 \fontsize{字体尺寸}{行距}示例, \fontsize{20pt}{24pt} 中国,注意命令跟文字之间有空格

示例

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\usepackage{verbatim}\usepackage{color}\setlength{\parindent}{0pt} %配置整篇不缩进\begin{document}% 粗体\textbf{三更灯火五更鸡,}% 斜体\emph{正是男儿读书时。}%颜色\textcolor{red}{黑发}\\\textcolor[RGB]{80,200,120}{不知}\\\definecolor{newColor}{RGB}{200,100,200}\textcolor{newColor}{勤学早,}%大小\large{白首}\\\footnotesize{方悔}\\\fontsize{12pt}{24pt}读书迟。\end{document}

效果图如下

注意,单行注释也算是空行,所以不要以为这里的分段是需要 1个空行的,所有的分段都需要2个空行。

下划线、双下划线、波浪线、删除线、斜删除线

注意啊,看到形似\usepackage{ulem}的语句,要记得要添加该包。

\usepackage{ulem}

\uline{黑发不知勤学早,白首方悔读书迟。} %下划线

\uuline{黑发不知勤学早,白首方悔读书迟。} %双下划线

\uwave{黑发不知勤学早,白首方悔读书迟。} %波浪线

\sout{黑发不知勤学早,白首方悔读书迟。} %删除线

\xout{黑发不知勤学早,白首方悔读书迟。} %斜删除线

示例

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\setlength{\parindent}{0pt} %配置整篇不缩进\usepackage{ulem}\begin{document}劝学诗%下划线\uline{唐 颜真卿}%双下划线\uuline{三更灯火五更鸡,}%波浪线\uwave{正是男儿读书时。}%删除线\sout{黑发不知勤学早,}%斜删除线\xout{白首方悔读书迟。}\end{document}

效果图如下

至此,有关Latex中关于文字处理的部分就写完了,既然是文章,那就应该有标题、段落等组织方式。

接下来就开始讲解文档的组织结构。

Latex文档层次结构

Latex层次

其实篇小字少的文档很好组织,但是一涉及到多篇章长段落多层次的文档,就体现到文档的组织功底了,组织的好,使读者赏心悦目;组织的不好,使人眼花缭乱,头昏脑涨。

Latex对每一个文档类型都有一个可供参考的层次分类,下面对常用 document class 做了简短的说明,各位同学在编排文档时尽量对号入座。如下所述:

article  - for articles in scientific journals, presentations, short reports, program documentation, invitations, …(科学期刊、 演示文档、 短报告、 程序文档、 邀请函等)book  - for real books(书籍排版)letter  - for writing letters.(信件书写)*report  - for longer reports containing several chapters, small books, thesis, …(多章节长报告、 短篇书籍、 博士论文等)proc  - a class for proceedings based on the article class.(基于 article 的会议文集类)slides  - for slides. The class uses big sans serif letters.(幻灯片。 该文档类使用大号 sans serif 字体。)minimal  - is as small as it can get. It only sets a page size and a base font. It is mainly used for debugging purposes.(非常小的文档类。 只设置了页面尺寸和基本字体。 主要用来查错。)beamer  - for writing presentations.(演示文稿编写)

里面有几个词,需要拿出来说一说,也就是:

part   –   篇,实对章节的归类chapter   –   章section   –   一级标题,也就是节subsection   –   二级标题subsubsection   –   三级标题paragraph   –   段,是一段文字的说明subparagraph   –   子段,是以列举的形式对前段文字的说明

其中文档类article是Latex的最基本类别,本文中的示例都是基于这一文档类来演示的。

示例:

%! Tex program = xelatex\documentclass[14pt]{article}\usepackage[UTF8]{ctex}\usepackage{graphicx} %插入图片%----封面\title{二十四史:史记}\author{司马迁}\date{东汉}\begin{document}\begin{titlepage}\maketitle\vspace{2cm}\includegraphics[scale=1]{simaqian.png}\end{titlepage}%----简介\centerline{\Huge{简介}}\vspace{2cm}\par《史记》全书包括十二本纪(记历代帝王政绩)、三十世家(记诸侯国和汉代诸侯、勋贵兴亡)、七十列传(记重要人物的言行事迹,主要叙人臣,其中最后一篇为自序)、十表(大事年表)、八书(记各种典章制度记礼、乐、音律、历法、天文、封禅、水利、财用)。\newpage%----目录\tableofcontents\newpage%----正文\section{本纪}\subsection{第一章 五帝本纪}\paragraph{黄帝者,少典之子,姓公孙,名曰轩辕。生而神灵,弱而能言,幼而徇齐,长而敦敏,成而聪明。轩辕之时,神农氏世衰。诸侯相侵伐,暴虐百姓,而神农氏弗能征。於是轩辕乃习用干戈,以征不享,诸侯咸来宾从……}\subparagraph{黄帝,是少典部族的子孙,姓公孙名叫轩辕。他一生下来,就很有灵性,在襁褓中就会说话,幼年时聪明机敏,长大后诚实勤奋,成年以后见闻广博,对事物看得透彻。轩辕时代,神农氏的统治逐渐衰弱,诸侯之间互相侵伐,祸害百姓,而神农氏无力征讨。于是轩辕就动用武力去讨伐那些不守纪律,不来朝拜神农氏的人,因而诸侯都对他表示臣服与追随……}\subsection{第二章 夏本纪}\subsection{第三章 殷本纪}\section{表}\subsection{三代世表第一}\subsection{十二诸侯年表第二}\end{document}

效果图如下

Latex封面

一般情况下,大家都需要在封面上填上,标题,作者,日期等内容。直接上示例

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\usepackage{graphicx} %插入图片%封面格式\title{劝学}\author{颜真卿}\date{唐代}\begin{document}%制作封面\begin{titlepage}\maketitle\includegraphics[scale=1]{yanzhenqing.png} %插入图片\end{titlepage}%正文颜真卿3岁丧父,家道中落,母亲殷氏对他寄予厚望,实行严格的家庭教育,亲自督学。颜真卿也格外勤奋好学,每日苦读。这首诗正是颜真卿为了勉励后人所作。\end{document}

效果图

Latex目录

首先使用\section{},subsection{},\part{},\chapter{}等命令在正文中插入了章节之后才能够再使用\tableofcontents命令在这些个命令出现的位置插入目录。

示例(具体代码请参考《 Latex层次》章节)

Latex摘要

尤其是在写论文时,通常在正文开篇前就应该加上摘要。格式:

\begin{abstract}%摘要内容\end{abstract}

示例及效果图

Latex关键字

有的模板有关键字格式,比如“IEEE”文件,格式如下:

\begin{IEEEkeywords}keyword1, keyword2. \end{IEEEkeywords}

当然,你也可以自定义关键字格式,如下

% Keywords command\providecommand{\keywords}[1]{\small\textbf{\textit{Keywords---}} #1}……\begin{document}……\keywords{one, two, three, four}

效果如下

Latex引用

通过“quote”关键字实现,示例及效果图如下:

注意:其中“kaishu”是指定字体的关键字。

Latex脚注

在需要添加脚注的文字后添加\footnote{脚注内容},示例及效果图如下:

Latex数学公式

Latex有两种公式模式

行间(inline)模式:即在正文中插入数学内容。行间公式用 $ … $独立(display)模式:独立成行,可以有或没有编号。无编号用\ [ … \ ]

示例

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\begin{document}数学公式,$lim_{x\to0}x^2$质能方程即描述质量与能量之间的当量关系的方程, \[E = mc^2\]\end{document}

效果图

从上面示例,可以看出,行间模式和独立模式之间的区别

Latex数学图形

绘制数学图形,我这边使用的是\usepackage{tikz}

示例

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\usepackage{tikz}\begin{document}\begin{tikzpicture}[style=thick]\draw [dashed] (0,4) -- (0.8,0.4);\draw [fill, color=gray] (0,2) ellipse [x radius=1, y radius=0.23] ;\draw [fill, color=gray] (0,0) ellipse [x radius=2, y radius=0.46] ;\draw (0,2) ellipse [x radius=1, y radius=0.23] ;\draw (0,0) ellipse [x radius=2, y radius=0.46] ;\draw (0,4) -- (-2,0);\draw (0,4) -- (2,0);\draw (0,4) -- (-0.8,-0.4);\draw (0,4)[above right=-1.75pt] node{$(x_0,t_0)$};\draw [->] (1.2,2.2) -- (1.8,2.8);\draw (1.5,2.8)[above right=-1.75pt] node{$B(x_0,t_0-t)$} ;\end{tikzpicture}\end{document}

效果图

Latex插入图片

插入图形使用是 ** “graphicx” ** 包,格式

\usepackage{graphicx} %插入图片...\includegraphics[scale=1]{yanzhenqing.png} %插入图片

具体的示例可以参考上面的《Latex封面》部分,效果如下:

Latex插入表格

格式:

\begin{tabular}……\end{tabular}

也可设置表格的属性等情况

对齐格式:l 左 c 居中 r 对齐线条:| 竖线 \hline横线 || 双竖线 \hline \hline 双横线设置宽度:p{宽度值},内容超过宽度时,自动换行

示例及效果

Latex插入代码

格式

\usepackage{listings}...\begin{lstlisting}% 代码段\end{lstlisting}

若需要代码高亮,需要使用“\usepackage{xcolor}”包,使用前需要定制一些参数,即代码块的基本配置

\lstset{columns=fixed, numbers=left,% 在左侧显示行号numberstyle=\tiny\color{gray}, % 设定行号格式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,% 不显示字符串中的空格language=c++,% 设置语言}

示例及效果如下

Latex文字加边框

使用“fbox”命令即可,示例及效果如下

Latex段落文字加边框

需要使用“\usepackage{framed}”包,示例及效果如下

latex分栏

使用包“\usepackage{multicol}”,格式

\usepackage{multicol}...\begin{multicols}{2} %分2栏%要分栏的内容\end{multicols}

示例及效果如下

Latex段落

添加 **空行 **、行间距的实现,使用包“setspace”,示例及效果

\vskip 1cm %跳过1cm的间距。

\usepackage{setspace}

……

\begin{spacing}{2.0} %2倍行间距

……

\end{spacing}

段间距,格式: \setlength{\parskip}{2em} %设置段落间距

示例及效果

首行缩进,使用包“ \usepackage{indentfirst} ”,使用命令设置缩进的距离

setlength{\parindent}{2em} ,这里的 2em 表示缩进 2 个字符位置.如果有一个段落你不想首行缩进, 在段落前使用命令 \noindent .示例如下:

\usepackage{indentfirst}\noindent Thirty-two\indent\setlength{\parindent}{1em}During

Latex空白字符

使用命令“\quad”实现空格效果,例如:

a \quad b  -->  a   b #a和b之间一个m的宽度

Latex页面配置

使用geometry宏包,可以让页边距和页眉页脚的设置变得非常简单,示例

\documentclass[a4paper]{article}\usepackage{geometry}\geometry{left=2.5cm,right=2.5cm,top=2.5cm,bottom=2.5cm}\begin{document}test\end{document}

也可以配置页面大小,如:

\geometry{a4paper} %写在导言区\geometry{paperheight=22cm, paperwidth=10cm} %自定义页面大小

其他常用的长度选项还有head,headsep,foot,见下图

Latex页眉页脚

通常用fancyhdr宏包来设置页眉和页脚,常用命令有:\pagestyle{type},\thispagestyle{type},setcounter{page}{number},\pagenumbering{style}。

\pagestyle{type}和\thispagestyle{type}命令用于设置页面样式(页眉和页脚)。\pagestyle{type}和\thispagestyle{type}的主要区别在于\pagestyle{type}对后续所有页面都有效,而\thispagestyle{type}仅仅对当前页面有效。在LaTeX中,默认提供了以下五种页面样式: empty - 没有页眉和页脚plain - 没有页眉,页脚包含一个居中的页码headings - 没有页脚,页眉包含章/节或者字节的名字和页码myheadings - 没有页脚,页眉包含有页码 默认情况下,页码从第一页开始(通常是包含标题页的)并且以阿拉伯数字形式显示(例如:1,2,3 …)。页码的编号也可以通过\setcounter{page}{number}命令手动设置,需要注意的是,手动设置可能会导致重复的页码出现。\pagenumbering{style}命令则用于改变页码的显示风格。LaTeX中页码风格包含以下五类: arabic - 阿拉伯数字roman - 小写的罗马数字Roman - 大写的罗马数字alph - 小写的字符形式Alph -大写的字符形式

示例

\begin{document}\thispagestyle{empty} % 当前页不显示页码\newpage %分页\pagestyle{headings}\setcounter{page}{1}\pagenumbering{Roman}\end{document}

Latex手写参考文献

可以手动书写参考文献,格式

\begin{thebibliography}{widest label}\bibitem[item number]{citation} \end{thebibliography}

其中widest label 用来设置参考文献序号的宽度,item number自定义参考文献的序号一般是省略的,该命令会按照顺序自动生成参考文献序号,citation为区分参考文献的标签(类似变量名),使用\cite{citation}命令引用参考文献时填入其中。示例如下:

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\begin{document}黑发不知勤学早,白首方悔读书迟~\cite{quanxue}。山有木兮木有枝,心悦君兮君不知\cite{yuerenge}。\begin{thebibliography}{}\bibitem{quanxue}《劝学》,唐,颜真卿\bibitem{yuerenge}《越人歌》,先秦,作者未知\end{thebibliography}\end{document}

注意!!!:在article文档类的节标题默认为 “Reference”,在 report / book 文档类的节标题默认为 “Bibliography”。若要修改默认节标题可以用以下命令。

\renewcommand{\refname}{\centerline{section-name}}

其中section-name可自行设置,若不填该参数,则取消显示节标题;若section-name不为空,则节标题即为所填的值。

Latex使用BibTeX生成参考文献列表

说是自动,其实跟手动差不多,不过是需要名字进行连接,废话不多说,直接上代码。

1、创建一个Latex文件,命名随意,如 test.tex

%! Tex program = xelatex\documentclass{article}\usepackage[UTF8]{ctex}\begin{document}黑发不知勤学早,白首方悔读书迟~\cite{quanxue}。\bibliography{bibFormat}{}\bibliographystyle{plain}\end{document}

注意,在要注释的语句后写上“~\cite{name}”,这里的name用于在bib文件中检索。

2、创建一个BibTeX参考文献库文件,文件的命名跟上述语句保持一致\bibliography{bibFormat}{},也就是创建名为“bibFormat”的bib文件,即bibFormat.bib。录入如下内容,每一个参考文献,写一个“@misc{ …… }”

@misc{quanxue,author = "颜真卿",title = "劝学",year = "唐"}

3、使用命令“\ll”编译后的效果如下

小结

本文的部分内容来自于网络搜索,我这里综合整理出来,以供大家学习参考。

其实整理文档不容易,内容繁多,各种资料查找,网络搜索,再加工,期间一度不想做了,但还是坚持了下来,在完结的那一刻感觉心情无比轻松……

参考资料

/topic/class/qq_37556330/article/details/106265576/yzy_1996/article/details/89452063

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。