1、 用 Asymptote 编程可能远不像你想象的那样可怕。 如果你仅仅是拿它来作一些图(这正是大多数人的目的),它可以是非常简单的。 打个比方,比如你想算个简单的数学就象 之类的你所需要做的并不是系统地学习 C 语言然后再编个程序, 而仅仅是去找个计算器按按键就行了。Asymptote 语言也是这个意思。当然, 如果你属于那种对编程不头疼的人, 那么你一定会在 Asymptote 中发现更多的乐趣, 并会使你自己以及他人受益的 Asymptote 的特点有很多自由的和商业的科技作图软件, 那么为什么还需要 Asymptote 呢?其实很简单,每个软件都有各自的优缺点, 没有一个万能的软件可以做
2、好每件事情。 每个软件的特点决定了什么人会使用它以及使用它做什么。 Asymptote 的主要特点包括: 是一种计算机高级程序语言,语法类似于 C/C+; 使用精确的坐标系统,可以输出高质量的向量图; 用 LaTeX 排版图中的文字和数学公式; 具有很大的灵活性,用户通常可以找到办法作出满足自己意愿的图; 具有很强的可扩展性,对于常用的功能可以写出通用的模块,这类似于 LaTeX 的宏包和 C/C+ 的库。这些特点令 Asymptote 区别于其它软件。特点本身谈不上好坏, 任何特点都有可能,在某些情况下,给你带来方便或者麻烦。不同于 Origin,SigmaPlot,Grace,XFig 等
3、作图软件, Asymptote 是编程语言。也就是说,它是基于代码的。你要用它作图, 就要写一段程序。这也表明,它不是“所见即所得”的。对那些 喜欢使用鼠标点来点去的读者来说,这无疑是一个缺点(希望 你不觉得这个缺点很严重)。而考虑到 Asymptote 的用户多半也会 使用 LaTeX,那么写写代码应该也算不上绝对不可接受的。但也恰恰是这一点给我们带来了很多好处。我们可以完全 按照我们自己的意愿来精确地安排作图方式和内容,我们可以重复使用代码, 我们还可以做很多鼠标完成不了的其它工作。 基本上,Asymptote 的所有其它特点都是基于这一点的。所以, 我把它当作 Asymptote 的优点
4、来看。同样是基于代码的,还有一些其它的科技作图软件, 例如前面提到的 MetaPost,以及 gnuplot,Gri,Pyx 等。 它们也都是各具特色。有时候结合起来使用可能更好。 比如作数据图时,我就喜欢先用 gnuplot 大致看看, 最后定稿时再用 Asymptote LaTeXLaTeX(LATEX,音译“拉泰赫”)是一种基于TeX的排版系统,由美国计算机学家莱斯利兰伯特(Leslie Lamport)在20世纪80年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由TeX所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和
5、数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。这个系统同样适用于生成从简单的信件到完整书籍的所有其他种类的文档。 LaTeX简介LaTeX使用TeX作为它的格式化引擎,当前的版本是LaTeX2。Leslie Lamport开发的LATEX是当今世界上最流行和使用最为广泛的TEX宏集。它构筑在Plain TEX 的基础之上,并加进了很多的功能以使得使用者可以更为方便的利用TEX的强大功能。使用LATEX基本上不需要使用者自己设计命令和宏等,因为LATEX已经替你做好了。因此,即使使用者并不是很了解TEX,也可以在短短的时间内生成高质量的文档。对于生成复杂的数学
6、公式,LATEX表现的更为出色。LATEX自从八十年代初问世以来,也在不断的发展.最初的正式版本为2.09,在经过几年的发展之后,许多新的功能,机制被引入到LATEX中。在享受这些新功能带来的便利的同时,它所伴随的副作用也开始显现,这就是不兼容性.标准的LATEX 2.09引入了“新字体选择框架”(NFSS)的LATEX,SLiTEX,AMSLATEX等等,相互之间并不兼容.这给使用者和维护者都带来很大的麻烦。为结束这种糟糕的状况,FrankMittelbach等人成立了ATEX3项目小组,目标是建立一个最优的,有效的,统一的,标准的命令集合。即得到LATEX的一个新版本3.这是一个长期目标,
7、向这个目标迈出第一步就是在1994年发布的LATEX2e。LATEX2e采用了NFSS作为标准,加入了很多新的功能,同时还兼容旧LATEX 2.09。LATEX2e每6个月更新一次,修正发现的错误并加入前,LATEX2e将是标准的。latex 历史TeX 格式最基本的 TeX程序只是由一些很原始的命令组成,它们可以完成简单的排版操作和程序设计功能。然而,TeX也允许用这些原始命令定义一些更复杂的高级命令。这样就可以利用低级的块结构,形成一个用户界面相当友好的环境。在处理器运行期间,该程序首先读取所谓的格式文件,其中包含各种以原始语言写成的高级命令,也包含分割单词的连字号安排模式。接着处理程序就
8、处理源文件,其中包含要处理的真正文本,以及在格式文件中已定义了的格式命令。创建新格式是一件需要由具有丰富知识程序员来做的事情。把定义写到一个源文件中,这个文件接着被一个名叫 initex 的特殊版本的 TeX程序处理。它采用一种紧凑的方式存贮这些新格式,这样就可以被通常 TeX程序很快地读取。Plain TeXKnuth 设计了一个名叫 Plain TeX的基本格式,以与低层次的原始 TeX呼应。这种格式是用 TeX处理文本时相当基本的部分,以致于我们有时都分不清到底哪条指令是真正的处理程序 TeX的原始命令,哪条是 Plain TeX格式的。大多数声称只使用 TeX的人,实际上指的是只用 P
9、lain TeX。Plain TeX也是其它格式的基础,这进一步加深了很多人认为 TeX和 Plain TeX是同一事物的印象。Plain TeX的重点还只是在于如何排版的层次上,而不是从一位作者的观点出发。对它的深层功能的进一步发掘,需要相当丰富的编程技巧。因此它的应用就局限于高级排版和程序设计人员。Leslie Lamport 开发的 LaTeX是当今世界上最流行和使用最为广泛的 TeX格式。它构筑在 Plain TeX的基础之上,并加进了很多的功能以使得使用者可以更为方便的利用 TeX的强大功能。使用 LaTeX基本上不需要使用者自己设计命令和宏等,因为 LaTeX已经替你做好了。因此,
10、即使使用者并不是很了解 TeX,也可以在短短的时间内生成高质量的文档。对于生成复杂的数学公式,LaTeX表现的更为出色。LaTeX自从二十世纪八十年代初问世以来,也在不断的发展。最初的正式版本为 2.09,在经过几年的发展之后,许多新的功能,机制被引入到 LaTeX中。在享受这些新功能带来的便利的同时,它所伴随的副作用也开始显现,这就是不兼容性。标准的 LaTeX2.09,引入了“新字体选择框架”(NFSS)的 LaTeX,SLiTeX,AMSLaTeX 等等,相互之间并不兼容。这给使用者和维护者都带来很大的麻烦。LaTeX2e为结束这中糟糕的状况,Frank Mittelbach 等人成立了
11、 LaTeX3项目小组,目标是建立一个最优的,有效的,统一的,标准的命令集合。即得到 LaTeX的一个新版本 3。这是一个长期目标,向这个目标迈出第一步就是在 1994 年发布的 LaTeX2e。LaTeX2e采用了 NFSS 作为标准,加入了很多新的功能,同时还兼容旧的 LaTeX2.09。LaTeX2e每 6 个月更新一次,修正发现的错误并加入一些新的功能。在 LaTeX3最终完成之前,LaTeX2e将是标准的 LaTeX版本。6 LATEX 是什么?Leslie Lamport 开发的LATEX 是当今世界上最流行和使用最为广泛的TEX 宏集。它构筑在Plain TEX 的 基础之上,并
12、加进了很多的功能以使得使用者可以更为方便的利用TEX 的强大功能。使用LATEX 基本上不需要使用者自己设计命令和宏等,因为LATEX 已经替你做好了。对于生成复杂的数学公式,LATEX 表现的更为出色。LATEX 自从八十年代初问世以来,也在不断的发展。最初的正式版本为2.09,在经过几年的发展之后,许 多新的功能,机制被引入到LATEX 中。标准的LATEX 2.09,引入了“新字体选择框架”(NFSS) 的LATEX,SLiTEX,AMS-LATEX 等等,相互之间并不兼容。为结束这中糟糕的状况,Frank Mittelbach等人成立了LATEX3 项目小组,目标是建立一个最优的,有效
13、的,统一的,标准的命令集合。即得到LATEX 的一个新版本3。这是一个长期目标,向这个目标迈出第一步就是在1994 年发布的LATEX2。LATEX2 采用了NFSS 作为标准,加入了很多新的功能,同时还兼容旧的LATEX 2.09。 每6 个月更新一次,修正发现的错误并加入一些新的功能。在LATEX3 最终完成之前,LATEX2 将是标准的LATEX 版本。7 什么是AMS-TEX/AMS-LATEX?AMS-TEX 是美国数学会提供的,在Plain TEX 基础上开发的TEX 宏集。它主要用于排版含有很多数 学符号和公式的科技类文章或书籍。AMS-TEX 给出了许多高级命令,可以让使用者很
14、方便地排版大型的, 复杂的数学公式。AMS-TEX 排版数学公式等的功能通过AMS-LATEX 中的宏包amsmath 在LATEX 中得到实现。AMS-TEX 目前的版本为2.1。AMS-LATEX 包括两部分,一是上面提到的amsmath 宏包,主要的目的是用来排版数学符号和公式。另 一部分是amscls,提供了美国数学会要求的论文和书籍的格式。AMS-LATEX 目前的版本为2.0。在提供AMS-TEX 和AMS-LATEX 的同时,美国数学会还提供一套数学符号的字库,AMSFonts。这套字 库中增加了很多TEX 的标准字库Computer Modern 所没有的一些数学符号,粗体数学
15、符号等。AMSFonts 现在的版本为2.2,有Metafont 和Type1 两种字库提供下载。8 TEX 和LATEX 是什么关系?LATEX 是TEX 中的一种格式(format) ,是建立在TEX 基础上的宏语言,也就是说,每一个LATEX 命令实 际上最后都会被转换解释成几个甚至上百个TEX 命令。但是,普通用户可以无需知道这中间的复杂联系。就象编程的时候如果使用一些已经编译好的函数库和模板可以使我们仅仅用几个命令就实现很多功能一样,LATEX 根据人们排版文章的习惯,定义了许多命令和模板,通过这些命令和模板,我们可以很快的得到漂亮的排版结果。9 LATEX 2.09 和LATEX2
16、 有什么区别?LATEX 2.09 是LATEX 在LATEX2 之前的一个版本(参见问题6 )。 对LATEX 2.09 做了很大的改进,增加了很多新功能。从文件内容上看,两者最显著的不同在于LATEX 2.09 使用documentstyle 命令定义文档类型以及所包含宏包,如documentstyletwoside,epsfigarticle 而LATEX2 使用documentclass 命令定义文档类型,用usepackage 命令包含宏包,如 documentclasstwosidearticle usepackageepsfig 如果你使用的不是几十年前的老机器,你的系统的LAT
17、EX 都是LATEX2 版本。LATEX 2.09 文件一般都可以在LATEX2 系统中以兼容方式编译。但是兼容方式编译速度慢,而且很多LATEX2 的新功能无法使用。如果你不是需要编译以前的LATEX 2.09 文件,你根本无需使用LATEX 2.09 ,也不用知道LATEX 2.09 与LATEX2 的差别。大部分LATEX 2.09 文件都可以通过用documentclass 命令和usepackage 命令代替documentstyle命令修改为LATEX2 格式。有时可能需要一些特殊宏包,例如latexsym ,对旧的LATEX 2.09 命令提供支持。10 MiKTEX、fpTEX
18、、teTEX、CTEX 又是什么关系?TEX 在不同的硬件和操作系统上有不同的实现版本。这就像C 语言,在不同的操作系统中有不同的编译 系统,例如Linux 下的gcc,Windows 下的Visual C+ 等。有时,一种操作系统里也会有好几种的TEX 系 统。目前常见的Unix/Linux 下的TEX 系统是teTEX,Windows 下则有MiKTEX 和fpTEX。CTEX 指的是 CTEX 中文套装的简称,是把MiKTEX 和一些常用的相关工具,如GSview,WinEdt 等包装在一起制作的一个简易安装程序,并对其中的中文支持部分进行了配置,使得安装后马上就可以使用中文。. Lat
19、ex与word的比较 LaTeX 与 Word 是两种不同类型的文本编辑处理系统,各有所长,如果要对文字编辑性能和使用便捷程度等作综合评比,Word 明显优于 LaTeX,仅“所见即所得”一项,Word 就会赢得绝大多数用户,但要仅限定在学术报告和科技论文方面,评比结果就不同了:从头开始Word 特点就是“所见即所得”,其基本功能初学者很容易掌握,很多 Word 用户都是无师自通。但随着篇幅和复杂程度的增加,花费在文稿格式上的精力和时间要明显加大,如下图蓝色示意曲线所示。因为创建自定义编号、交叉引用、索引和参考文献等就不是“所见即所得”了,得耐着性子反复查阅 Word 的在线帮助或借助相关软件
20、帮忙。对于 LaTeX 初学者,即就是编排很简单的文章,也要花较多的精力和时间去学习那些枯燥的命令和语法,特别是排写数学公式,经常出错,多次编译不能通过,使很多初学者望而却步。可是一旦掌握,不论文 稿长短和复杂与否都会熟练迅速地完成,先前学习 LaTeX 的精力投入将由此得到回报,如下图红色示意曲线所示。精力与时间耗费文件大小和复杂程度内容与样式当用 Word 写作时,要花很多精力对页版式、章节样式、字体属性、对齐和行距等文本参数进行反复选择对比,尤其是长篇文章,经常出现因疏忽而前后文体格式不一致的现象;当在稿件中插入或删除一章或章节次序调整时,各章节标题、图表和公式等的编号都要用手工作相应修
21、改,稍有不慎就会出现重号或跳号。 你既是作者又是编辑还兼排字工。使用 LaTeX 编版,如无特殊要求,只要将文稿的类型(article、report 或 book 等)告诉 LaTeX,就可专心致志地写文章了,至于文稿样式的各种细节都由 LaTeX 统一规划设置,而且非常周到细致;当修改稿件时,其中的章节、图表和公式等的位置都可任意调整,无须考虑编号,因为在源文件里就没有编号,文件中的所有编号都是在最后编译时 LaTeX 自动统一添加的,所以绝对不会出错。换句话说,Word 把文稿的内容与样式混为一体,而 LaTeX 将它们分离,作者只需专注于文稿的内容,而文稿的样式几乎不用过问,LaTeX
22、是你的聪明而忠诚的文字秘书,如有特殊要求,也可使用命令修改,LaTeX 会自动将相关设置更新,无一遗漏。接受 LaTeX 稿件的出版社大都有自己的文稿样式模板,主要就是一个类型文件包,简称类包。如果稿件未被甲出版社采用,在转投乙出版社前,只需将稿件第一句中类包名称由甲出版社的改为乙出版社的,整篇稿件的样式就随之自动转换过来了。就一句话的事儿,简单的不能再简单了,然而因为“体制”的原故,Word 却根本无法做到这一点。数学公式Word 有个公式编辑器,可以编辑普通数学公式,但使用很不方便,外观效果较差,也不能自动编号,尤其是很难作为文本的一部分,融入某一行中,大都专起一行。如果碰到复杂的数学公式
23、,编辑起来就很困难。有些用户只好另外安装可嵌入 Word 环境的工具软件 Math-Type 来弥补这一不足。LaTeX 的特长之一就是数学公式编辑,方法简单直观,“所想即所得”,公式的外观精致细腻,而且公式越复杂这一优点就越明显。普通单行公式可以像纯文字文本一样插入字里行间。下面举三例加以比较 ,其中 Word 分两种情况,一是 DOC 格式的屏幕显示效果,二是将 DOC 格式文件通过 Acrobat 转换为 PDF 格式的效果:Word:LaTeX:Word,对接不齐,行距变宽:LaTeX,对接工整,行距不变:尽管在默认状态下,就能将数学公式编排的非常精致美观,LaTeX 仍然还提供了很多
24、调节命令,可以对公式的外观作更加细微的调整,使其尽善尽美。插 图Word 有个绘图工具,简易直观,但功能有限效果不佳。论文中的复杂图形大都用功能强大的 Visio、Photoshop 等绘图软件绘制,然后插入 Word。LaTeX 自身也具有简单的绘图功能,如调用各种绘图宏包,可画出非常复杂的图形,缺点是不直观,命令格式繁琐,不易熟练掌握,名曰画图,实为编程。可同样先使用 Visio 绘图,然后粘贴到 Adobe Illustrator,对图形的细节作进一步处理后,存储为 PDF 或 EPS 格式,最后用插图命令调入 LaTeX 源文件即可,其效果更为精致。创建参考文献Word 目前还不具备管
25、理参考文献的功能,用户一般都是采用 Reference Manager 或是 NoteExpress 等外部工具软件来解决这一问题。创建参考文献可是 LaTeX 的强项。LaTeX 自带一个辅助程序 BibTeX,它可以根据作者的检索要求,搜索一个或多个文献数据库,然后自动为文稿创建所需的参考文献条目列表。如果编写其它文件用到相同的参考文献时可直接引用这个数据库。参考文献的样式和排序方式都可以自行设定。很多著名的科技刊物出版社、学术组织和 TUG 网站等都提供相关的 BibTeX 文献数据库文件,可免费下载。显示与输出在文本对齐、字体变换、拼写检查、单词间距控制、自动断词和自动换行等纯文字处理
26、功能方面,Word 经多次升版后已与 LaTeX 相差无几,但是排版效果却有所不同。以 Times 字体为例,在Word 中“Ta”和“PA”两个字母的间距有些松散,见下图所示。LaTeX 将各种拼写组合时的字母间距进一步优化调整,松紧得当,使整个文本的排版效果更加工整匀称。在换行时,LaTeX 不仅可以根据音节自动断词,也可以按照作者的要求进行设定断词,一个单词可以设定多种断词方式,特别适用于科技论文中反复出现的专业词汇或缩略写,这既能保持单词间距均匀,又不易产生误解。在科技著作手稿中经常可以看到某些论述附有说明、出处或考证;或者某些段落划上黑杠以示删除;或在边空里写有准备补充的文字。在 L
27、aTeX 源文件中使用注释标记可以将上述这些内容完整地保留下来,以备后用,而在编译后的 PDF 文件中还看不到这些内容。科研论文要经过反复推敲,多次修改,注释功能非常实用。“所见即所得”的 Word,当然没有这个功能,它删除的内容就甭想再找回来了。一篇论文,Word 新手与牛人的排版美观程度差别很大,“所见即所得”成了一大缺点,因为 Word 本身不能帮助作者美化作品,自己排成什么样就什么样,即:“所得仅所见”,就像在白纸上作画,全凭个人的悟性与灵感。而 LaTeX 初学与专家的排版外观差别很小,仅是快慢不同,都能达到专业出版水平,这就是 LaTeX 的一大优点,只要想法一致就能得到相同的结果
28、,也就是“所想即所得”。目前 PDF 格式已成为全世界各种组织机构用来进行更加安全可靠的电子文件分发和交换的出版规范,科技论文大都使用 PDF 格式。LaTeX 可以直接输出 PDF、PS 或 DVI 格式文件;而 Word 输出的是 DOC 格式文件,还须购买 Adobe Acrobat 软件,将 DOC 转换为PDF;另外,图形中的数学公式或文本中数学式的上下标,在转换后常出现位置偏移字形变大等问题。可扩充性用户可以像搭积木那样对 LaTeX 进行功能扩充或添加新的功能。例如,加载一个 CJK 宏包,就可以处理中文,调用 eucal 宏包可将数学公式中的字符改为欧拉书写体;如果对某个宏包效果不太满意,完全可以打开来修改,甚至照葫芦画瓢自己写一个。这些可附加的宏包文件绝大多数都可从 CTAN 等网站无偿下载。因为设计的超前性,TeXLaTeX 程序系统几十年来没有什么改动,而且由于它的可扩充性,LaTeX 将永葆其先进性,也就是说,学习
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1