收藏 分享(赏)

latex入门.pdf

上传人:精品资料 文档编号:9382553 上传时间:2019-08-04 格式:PDF 页数:45 大小:754.34KB
下载 相关 举报
latex入门.pdf_第1页
第1页 / 共45页
latex入门.pdf_第2页
第2页 / 共45页
latex入门.pdf_第3页
第3页 / 共45页
latex入门.pdf_第4页
第4页 / 共45页
latex入门.pdf_第5页
第5页 / 共45页
点击查看更多>>
资源描述

1、LATEX入门庄波前言开始之前请放轻松习惯了像Word一样所见即所得的字处理软件,初学LATEX总免不了十分焦躁怎么修改字体、字号,怎么修改行间距,页面设置在哪里类似的问题总是萦绕在心头,挥之不去。实际上,LATEX的重要作用之一就是把作者从繁重的排版工作中解脱出来,从而专注于写作。不能理解这一点,将在一定程度上阻碍你学习的进度。所以,请放轻松,相信LATEX自会处理一切细节。这是一份结合个人学习心得所写的LATEX入门教程,内容删繁就简,目的是帮助初学者轻松、快速地学习LATEX中最有用的基础知识。希望本教程对您有所帮助。内容简介首先安装LATEX,然后动手写第一个LATEX文档,你就进入了

2、LATEX的世界。接下来,你会了解到使用中文最简单的方法。然后,学习LATEX中使用数学公式的基本方法。你应该开始喜欢LATEX了。处理引用文献是LATEX的拿手好戏。使用科技论文模板会让你发现LATEX的优雅。你一定会爱上LATEX。最后,简要介绍插图、表格等常用功能。学习LATEX至此,应该算是入门了。11安装LATEX 2附录是一些简单的参考资料:插入程序代码、数学公式参考、常用编辑软件、TEX简介等。用Google学术获取文献引用则是一个有帮助的小技巧。对于有一定基础的读者,推荐阅读引用文献,用Google学术获取文献引用,使用科技论文模板等内容。1安装LATEXWindows用户可以

3、到http:/www.ctex.org/CTeXDownload/下载安装。Linux用户(以Ubuntu为例):sudo apt-get install texlive-fullsudo apt-get install latex-cjk-all2第一个LATEX文档学习LATEX最简单的方法就是动手实践。通过创建一个简单的LATEX文档并输出为PDF文件,你就可以了解最基本的用法。2.1 Hello LATEX现在开始创建一个最简单的LATEX文档。documentclassarticlebegindocumentHello LaTeX!enddocument你可以使用任何你喜欢的文本编辑

4、器,创建一个文本文件,编辑上面的内容,并保存成名为hello.tex的文件。好的,你的第一个LATEX文档就做好了。2第一个LATEX文档32.2选择一个编辑器选择一个合适的编辑器前端,可以为你提供很多方便,除了方便编辑内容,还可以调用排版命令。Windows用户常用WinEdt或TeXworks,Linux用户可以用vim、emacs等。对于Windows用户来说,安装好CTeX套件之后,系统提供了WinEdt、TeXworks编辑器。对于Linux用户来说,可以使用vim、emacs,也可以安装其他LATEX前端,如TeXworks:sudo apt-get install texwork

5、s各种编辑器的用法大同小异,以下教程中主要以TeXworks和WinEdt为例进行说明。 TeXworks是一个免费、开源的TEX集成环境,界面简洁,操作方便,可以在Windows、Linux、Mac等操作系统上使用。 WinEdt是一个功能强大的文本编辑器,功能丰富,但只能在Windows下使用。2.3生成PDF通常我们用LATEX编译上面的.tex文档,最终生成PDF文件。TeXworks如果您使用TeXworks编辑文档,可以选择菜单命令【排版|pdfLaTeX】。或者,更简单地,在工具栏中选择排版命令【pdfLaTeX】,然后单击前面的执行按钮即可。编译完成,你就可以看到生成的PDF文

6、档了。WinEdt如果您正在使用WinEdt编辑文档,可以选择菜单命令【TeX| PDF | PDFTeXify】。另外一种方式,就是在工具栏中选择编译工具【PDFTeXify】,然后单击即可。编译完成,你就可以看到生成的PDF文档了。2第一个LATEX文档4命令行对Linux用户来说,在终端中键入命令更加方便:pdflatex hello.tex以上命令用pdflatex编译hello.tex生成一个hello.pdf文件。您可以用任何PDF阅读器打开查看。pdflatex是一个LATEX排版程序,它可以编译.tex文档,生成PDF文件。2.4常用排版命令LaTeX源文档中包含许多以反斜杠(

7、)开头的排版命令。现在来解释一下上面LATEX源文件中内容的含义,并在此基础上学习几个最常见的排版命令。2.4.1 documentclassarticledocumentclassarticle说明了源文档的文档类是article,即一般文章。文档类的作用是控制整个文档的样式。LATEX中预先定义了一些常用的文档类,如:article排版科学期刊、短报告等book排版书籍report排版多章节长报告、短篇书籍等slides排版幻灯片如果要编辑一本书,可以这样做:2第一个LATEX文档5documentclassbook2.4.2 begin document和end documentbegi

8、ndocument和enddocument分别指出文档内容的开始和结束,两者之间即是文档的内容,在这个简单的文档中则只有一句话。2.4.3标题、作者和日期如果想添加文章的标题、作者、日期等信息,需要用到另外的几个常用的命令,可以这样做:documentclassarticletitleMy First DocumentauthorBilldatetodaybegindocumentmaketitleHello LaTeX!enddocument这里用到 title标题,写在大括号中。 author作者,写在大括号中。如果有多个作者,可以用and命令分隔开。如:authorBill and To

9、m datetoday日期是今天。如果不指定日期,可以用空的date。如:2第一个LATEX文档6date maketitle生成标题。如果没有这一条命令,则不会显示文档的标题。maketitle应该写在begindocument和enddocument之间的正文部分。2.4.4段落和换行在LATEX中,两个段落之间要用两个连续的换行分隔开。换句话说,两个段落之间至少要有一个空行。The first paragraph.The same paragraph.The second paragraph.另外,LATEX会自动处理换行,必要时还会自动断字以使每一行中的字符间距比较均匀。也可以用两个反

10、斜线()强制换行。The first paragraph.Next line in the same paragraph.2.4.5内置字符串LATEX中还有一些内置字符串,如LaTeX等,注意区分大小写。TeX is TeX, LaTeX is LaTeX2.4.6特殊字符普通字符可以直接输入,而有些特殊字符(如#$% quad qquad详细内容参见数学公式参考中的空白间距。4.4.2根号根号用sqrt表示。5引用文献12$sqrt2 quad sqrtnx$2nx4.4.3分数分数用frac命令表示。$frac12 quad fracdydx$12dydx适当运用这些数学符号,就能够写出

11、更加复杂的公式。如:The roots of equation $a x2 + b x + c = 0$ are$x_1,2 = frac- b pm sqrtb2 - 4 a c2 a.$The roots of equation ax2 +bx+c = 0 arex1,2 = bb2 4ac2a .上面公式中命令pm表示正负号。更多内容参见数学公式参考中的运算符。5引用文献处理复杂的参考文献引用也是LATEX的拿手好戏,当你了解到这一点之后,你一定会喜欢上它。下面以BibTeX为例,以最简单的方式介绍最实用的方法。5引用文献135.1建立文献数据库5.1.1 BibTeXBibTeX是一套

12、用于管理文献、产生文献列表的格式,它定义了article、book等十几种参考文献格式。这里,我们不讨论它们的具体格式,你只要知道如何获取BibTeX格式的文献信息即可(参见用Google学术获取文献引用)。比如,下面就是一个文献的BibTeX引用:articleakyildiz2002wireless,title=Wireless sensor networks: a survey,author=Akyildiz, Ian F and Su, Weilian andSankarasubramaniam, Yogesh and Cayirci, Erdal,journal=Computer n

13、etworks,volume=38,number=4,pages=393-422,year=2002,publisher=Elsevier每一个BibTeX文献都应该有一个唯一的关键字,就像上面的“akyildiz2002wireless。你可以根据需要去修改它,但应当保证根据关键字能够唯一地确定一个文献。5.1.2建立.bib文献数据库建立一个文本文件,并以扩展名为.bib保存。把所有需要引用的BibTeX格式的文献信息复制到文件中并保存,一个文献数据库就建立好了。可以将下面的内容保存为文献数据库myref.bib。articleakyildiz2002wireless,title=Wire

14、less sensor networks: a survey,author=Akyildiz, Ian F and Su, Weilian andSankarasubramaniam, Yogesh and Cayirci, Erdal,journal=Computer networks,volume=38,number=4,pages=393-422,year=2002,publisher=Elsevier5引用文献14bookraghavendra2004wireless,title=Wireless sensor networks,author=Raghavendra, Cauligi

15、S andSivalingam, Krishna M and Znati, Taieb,year=2004,publisher=Springerinproceedingsmanjeshwar2001teen,title=TEEN: a routing protocol for enhancedefficiency in wireless sensor networks,author=Manjeshwar, Arati and Agrawal, Dharma P,booktitle=Parallel and Distributed ProcessingSymposium, Internation

16、al,volume=3,pages=30189a-30189a,year=2001,organization=IEEE Computer Society5.2引用文献继续通过一个简单的例子,说明引用文献的方法。假设我们已经创建了一个LATEX文件mypaper.tex,并且参考文献数据库myref.bib已经保存在同一个文件夹中。在LATEX文档中引用参考文献的方法可以分三步:(1)使用bibliography数nullnull命令说明参考文献数据库。(2)使用bibliographystylenull式命令规定参考文献列表的样式(plain、unsrt、alpha或abbrv)。(3)使用c

17、itenull键命令引用参考文献。documentclassarticlebegindocumentWireless sensor networks are expected to find wide applicabilityand increasing deployment in the future citeakyildiz2002wireless .bibliographystyleplainbibliographymyrefenddocumentLATEX能够自动处理文献的引用,并自动生成参考文献列表,但至少需要四次编译操作(以xelatex为例):xelatex bibtex xe

18、latex 5引用文献15Wirelesssensornetworksareexpectedto ndwideapplicabilityandincreas-ingdeployment inthefuture 1.References1 IanFAkyildiz,WeilianSu,YogeshSankarasubramaniam,andErdalCayirci.Wirelesssensornetworks: a survey. Computernetworks, 38(4):393422,2002.图1:使用BibTeX引用参考文献xelatex。如果没有得到正确的结果,请依次执行上面的四次

19、编译操作。某些编辑软件可能提供了一次完成上面所有操作的功能。 WinEdt中使用【PDFTeXify】。 TeXworks中使用【pdfLaTeX+MakeIndex+BibTeX】或【XeLaTeX+MakeIndex+BibTeX】。5.3改变参考文献列表样式BibTeX提供了四种标准的参考文献列表样式:plain参考文献列表按作者姓氏排序,序号为阿拉伯数字。unsrt参考文献列表按正文中引用顺序排序,序号为阿拉伯数字。alpha参考文献列表按作者姓氏排序,序号为作者姓氏加年份。abbrv类似plain样式,作者名字、月份、期刊名等用缩写。只要改变bibliographystyle命令中的

20、样式名称,就可以改变参考文献列表的样式。bibliographystylealpha % plain, unsrt, alpha, abbrv5.4使用GB/T 7714-2005样式你可能已经发现,前面所用的四种标准样式与国内大多数期刊、论文所要求的参考文献样式都有所不同。幸运的是,BibTeX允许使用自定义的参考文献样式文件(通常是一个扩展名为.bst的文本文件)。下面仅结合我5引用文献16Wirelesssensornetworksareexpectedto ndwideapplicabilityandincreas-ingdeployment inthefuture ASSC02.Re

21、ferencesASSC02IanFAkyildiz,WeilianSu,YogeshSankarasubramaniam,andErdalCayirci. Wireless sensornetworks:a survey. Computernetworks,38(4):393422,2002.图2:使用alpha样式的参考文献国的参考文献著录规则(GB/T 7714-2005),介绍一下参考文献样式文件的使用方法。GB/T 7714-2005文后参考文献著录规则是我国的国家标准,国内大多数论文、期刊对参考文献的格式都符合该标准。南京大学计算机科学与技术系胡海星设计了一份符合GB/T 7714

22、-2005规范的BibTeX样式文件,可以下载后直接使用。下载符合GB/T 7714-2005规范的BibTeX样式文件gbt7714-2005.bst,与.tex文档保存在同一文件夹中。然后,在文档中用bibliographystylegbt7714-2005命令即可应用该样式。documentclassctexartbegindocumentWireless sensor networks are expected to find wideapplicability and increasing deployment in the futureciteakyildiz2002wireles

23、s, manjeshwar2001teen.bibliographystylegbt7714-2005bibliography myrefenddocument5.5使用natbib宏包参考文献在正文中的引用格式通常有两种:作者-年份和数字。LATEX提供的cite命令只支持数字模式,而Patrick W. Daly设计的natbib宏包则同时支持这两种模式。5引用文献17Wirelesssensornetworksareexpectedtondwideapplicability andincreasingdeploymentinthefuture1,2.参考文献1AKYILDIZIF,SUW

24、,SANKARASUBRAMANIAMY,etal.Wirelesssensornetworks:a surveyJ.Computernetworks,2002,38(4): 393422.2MANJESHWARA, AGRAWALD P.TEEN:a routingprotocolforenhancedeciencyinwirelesssensornetworksC/ParallelandDis-tributedProcessingSymposium,International: Vol3.2001: 30189a30189a.图3:符合GB/T 7714-2005规范的参考文献5.5.1宏

25、包选项natbib提供了丰富的选项,如:引用样式(authoryear, numbers,super),括号(round, square)等。如果想使用authoryear引用方式,且用圆括号,可以这样调用natbib宏包:usepackageauthoryear, roundnatbib5.5.2列表样式natbib提供三种列表样式:plainnat、unsrtnat、abbrvnat,分别对应于标准样式plain,unsrt,abbrv(参见改变参考文献列表样式)。bibliographystyleplainnat % plainnat, unsrtnat, abbrvnat5.5.3引用

26、文献natbib提供了多种引用命令,最基本的是citet和citep,其用法与cite相同。6使用科技论文模板18documentclassarticleusepackageauthoryear, roundnatbib %调用宏包natbibbegindocumentWireless sensor networks are expected to find wide applicabilityand increasing deployment in the future citepmanjeshwar2001teen.citetakyildiz2002wireless explored th

27、e communication architecturefor sensor networks is outlined, and the algorithms and protocolsdeveloped for each layer in the literature.bibliographystyleplainnatbibliography myrefenddocumentWirelesssensornetworksareexpectedto ndwideapplicabilityandincreas-ingdeployment inthefuture(ManjeshwarandAgraw

28、al,2001).Akyildizetal.(2002)exploredthecommunicationarchitectureforsensornetworksisoutlined,andthealgorithmsandprotocolsdevelopedforeach layerinthe literature.ReferencesIanF Akyildiz,WeilianSu,YogeshSankarasubramaniam, andErdalCayirci.Wirelesssensornetworks:asurvey. Computernetworks, 38(4):393422,20

29、02.AratiManjeshwar andDharmaP Agrawal. Teen:a routingprotocolforen-hancede ciencyin wireless sensornetworks. In ParallelandDistributedProcessingSymposium,International, volume3,pages30189a30189a.IEEEComputerSociety, 2001.图4:使用natbib引用参考文献6使用科技论文模板LATEX的最大优点之一就是实现了内容和格式的分离,从而让作者能够专心写作,不用关心排版的问题。下面以El

30、sevier期刊论文模板为例,简要说明使用模板的好处。在初步学习了LATEX之后,应该特别注意写作和排版的区别。对于大多数人来说,可以只用LATEX进行写作,完全不用关心任何6使用科技论文模板19版面和格式的问题。而像页面设置、字体、字号、段落格式等诸如此类的排版工作,都交给设计模板的专业人员去做。6.1应用模板以Elsevier期刊论文模板为例。要应用该模板,只要设置文档类documentclasselsarticle,就足矣得到一份非常漂亮的文档了。用pdfLaTeX编译下面的文档,看看有什么效果。documentclasselsarticle %使用elsarticle文档类begind

31、ocument%正文之前的内容(标题、作者、摘要、关键词等)beginfrontmattertitleElsevier LaTeX templateauthorElsevieraddressRadarweg 29, AmsterdambeginabstractThis template helps you to create a properly formattedLaTeX manuscript.endabstractbeginkeywordElsevier sep LaTeX sep templateendkeywordendfrontmatter%正文sectionThe Elsevie

32、r article classenddocument若编译时找不到elsarticle模板,系统通常会自动下载。此时只要保持在线状态即可。另外,也可以到Elsevier或CTAN直接下载该模板。6使用科技论文模板20图5:应用Elsevier模板6.2修改版面格式文档类elsarticle提供了很多选项(详细说明请参考elsarticle文档),可以把版面修改为需要的格式。例如,应用以下选项就可以得到一个双栏(3p, twocolumn)、增大了行间距(review)的文档,可以方便审阅、修改。documentclass3p,twocolumn,reviewelsarticle现在您应该明白,

33、使用LATEX时,您只要写作内容,套用模板类就可以完成繁杂的排版工作。试图自己动手去调整字体、字号、行距甚至是分栏等类似的排版操作是完全没有必要的。只有懂得这一点,才会体会到LATEX让人专注写作的妙处。在LATEX的世界里,专业的排版工作应该由专业人士来做。只要设计好文档类模板,普通用户不必再做任何排版工作,就能得到专业的排版效果。7插图21图6:双栏审阅格式7插图下面介绍在LATEX中插入图像的基本方法。在计算机中图像的格式有很多种,下面主要用到JPEG,PNG,EPS,PDF等最常见的格式。下面我们直接用X ELATEX排版,因为它直接支持BMP、JPEG、PNG、EPS和PDF等常用格

34、式。latex支持EPS不支持PDF,而pdfLaTeX支持PDF但不支持EPS,这一点常常令初学者在插入图片时遇到问题。7.1基本用法要在LATEX文档中插入图像,首先要调用宏包graphicx,然后在文档中用includegraphics文null名命令插入图像。例如,把figures文件夹下的图像文件picture.jpg插入到文档中,可以这样做:7插图22documentclassarticleusepackagegraphicx %调用宏包graphicxbegingdocumentincludegraphicsfigures/picture.jpg %插入图像enddocument

35、7.2调整插图大小要调整插图的大小,可以使用includegraphics命令的参数。width宽度height高度scale缩放比例includegraphicswidth=6cma.epsincludegraphicsheight=4cma.epsincludegraphicswidth=0.5textwidtha.epsincludegraphicsscale=0.5a.epstextwidth指的是页面内容的宽度,0.5textwidth指的是页面内容宽度的一半。7.3设置文件搜索路径为方便起见,通常会把所有图像文件保存在某个文件夹下面。这样一来,每次插入图像就需要包含文件路径,写起来

36、麻烦,也不方便维护。LATEX中可以用graphicspathnullnull名命令设置图像文件的搜索路径,再插入图像时就不用写文件的路径了。graphicspath./figures/includegraphicspicture.jpg7插图237.4使用图像环境使用figure环境不但可以给图像添加编号和标题,还可以让LATEX帮助你自动调整图片的位置,以保持恰当的页面布局。7.4.1编号和标题将图像放置在figure环境中,LATEX会对图像自动编号,还可以用caption命令添加标题。beginfigurehtbpcentering %让插图居中includegraphicswidth

37、=0.8textwidtha.jpg %插入图像captionA sample figure %设置插图标题endfigure上面的centering命令可以让图片居中。如果插图没有出现在当前位置,也不用担心,LATEX会自动调整插图的位置(参见浮动位置)。7.4.2浮动位置figuer是一种浮动环境,因为它可以自动调整位置。可以使用以下选项的任意组合指定插图的理想位置:h here,这里t top,页顶b bottom,页尾p float page,单独的浮动页beginfigurehtbp %指定浮动位置centeringincludegraphicswidth=6cma.epscapti

38、onA sample figure8表格24endfigure这里参数htbp的意思是,按照h(这里)、t(页顶)、b(页尾)、p(浮动页)的优先顺序自动为插图安排恰当的位置。7.4.3引用插图编号为了引用某个插图,可以先用label标签名命令添加标签,然后可以在正文中用ref标签名引用其编号。beginfigurecenteringincludegraphicswidth=6cma.epscaptionA sample figurelabelfg:sample %标签放在标题后面endfigureFigure reffg:sample shows .注意:label必须放在标题caption

39、的后面,否则会引用前一个。8表格下面简要介绍表格的基本用法。8.1简单表格用tabular环境创建表格,其中用hline表示横线,|表示竖线,表示换行,return 0;endlstlistingenddocument/ Hello world in C. /#include int main() fprintf (“Hello world .“ );return 0;g图7:用listings插入程序代码listings宏包支持很多程序语言,详细情况可查阅相关文档。A插入程序代码27A.2美化代码listings可以通过设置选项改变代码的样式,下面仅以行号和边框为例。选项说明numbers行

40、号(none无,left左侧,right右侧)frame边框(none无,lines上下线条,single单线边框,shadowbox阴影边框)beginlstlistinglanguage=C, numbers=left, frame=single/* Hello world in C. */#include int main() printf(“Hello world.“);return 0;endlstlisting1 / Hello world in C. /2 #include 34 int main() f5 printf (“Hello world.“);6 return 0;7

41、 g图8:给程序代码添加行号和边框A.3全局设置若各处代码设置相似,可以用lstset命令进行全局设置,可免去在每个lstlisting环境中添加选项。B用GOOGLE学术获取文献引用28documentclassarticleusepackagelistings %调用listings宏包%用lstset进行全局设置lstsetlanguage=C, numbers=left, frame=singlebegindocument% lstlisting环境使用全局设置beginlstlisting/* Hello world in C. */#include int main() print

42、f(“Hello world.“);return 0;endlstlistingenddocument以上是listings宏包的简单用法,更多详细内容请查阅listings文档。B用Google学术获取文献引用为了获取BibTeX格式的文献信息,一种简单有效的方法是利用Google学术搜索。如果无法访问Google学术,可以试试https:/wen.lu/scholar。也可以访问其他文献数据库,Science Direct,IEEExplor,Webof Knowledge,Microsoft Academic等等,一般都会提供BibTeX格式的文献引用。举例来说,在Google学术中搜索

43、关键字“wireless sensor networksa survey,找到下面的文献。点击页面上的“引用,会弹出一个文献引用对话框,点击对话框上的“BibTeX,就得到了该文献BibTeX格式文献信息:C数学公式参考29图9:搜索到的文献图10:文献的引用articleakyildiz2002wireless,title=Wireless sensor networks: a survey,author=Akyildiz, Ian F and Su, Weilian andSankarasubramaniam, Yogesh and Cayirci, Erdal,journal=Compu

44、ter networks,volume=38,number=4,pages=393-422,year=2002,publisher=ElsevierC数学公式参考这里简要介绍各种数学公式的写法,供初学参考查阅。C.1常用数学符号下面介绍常用的数学符号。C数学公式参考30C.1.1上下标指数或上标用表示,下标用_表示。如果上下标多于一个字符,需要用一对大括号 括起来。$ex x_i a_ij a_ij2$exxiaija2ijC.1.2空白间距通常,数学公式中的空格会被忽略,如果要在数学公式中插入空白,用以下命令(间距从小到大):命令宽度说明, ab小空格,3/18em: ab中空格,4/18em; a b粗空格,5/18emquad a b大空格,1emqquad a b大空格,2em例如:$a quad b$a b

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报