TeX (Extract)

TeX
开放分类: 计算机字处理排版软件
名称】:TeX

中文释义】:基于宏的流行的文本格式化程序 (它是包括LaTeX和teTeX在内的其它此类格式化程序的基础)

概述

    电子排版系统的出现给印刷出版业带来了一场革命,利用电子计算机及各种辅助设备,可以完成从文稿、图表的录入、编辑、修改、组版,直至得到各种不同用途、不同质量的输出结果。利用电子排版系统,可以减轻劳动强度,缩短出版周期。

  目前世界上有许多电子排版系统。这些系统各有特点,也各有自己的适用范围。TeX 就是一种优秀的电子排版系统。

    TeX是由著名的计算机科学家Donald E. Knuth(高德纳)发明的排版系统,利用Tex很一很容易的生成高质量的 dvi文件,打印输出。利用dvips,dvipdfmx,pdflatex等程序成成 pdf,ps,文件,latexhtml生成 html文件。

    它在学术界十分流行,特别是 数学物理学和计算机科学界。TeX被普遍认为是一个很好的 排版工具,特别是在处理复杂的数学公式时。利用诸如是LaTeX等终端软件,TeX就能够排版 出精美的文本。通过ctan上的 包可以扩展其功能,可以作 幻灯片,定义模板。中文支持可以由CCT,CJK来 完成

什么是TEX

  TeX 提供了一套功能强大并且十分灵活的排版语言,它多达900多条指令,并且 TeX 有宏功能,用户可以不断地定义自己适用的新命令来扩展TeX系统的功能。许多人利用 TeX 提供的宏定义功能对 TeX 进行了二次开发,其中比较著名的有美国数学学会推荐的非常适合于数学家使用的 AMS-TeX 以及适合于一般文章、报告、书籍的 LaTeX 系统。

  TeX 系统是公认的数学公式排得最好的系统。美国数学学会(AMS)鼓励数学家们使用 TeX 系统向它的期刊投稿。世界上许多一流的出版社如 Kluwer、Addison-Wesley、 牛津大学出版社等也利用 TeX 系统出版书籍和期刊。

  大部分的 TeX 系统都是免费的。Knuth 教授还公开了他的全部源程序。TeX 系统目前已经在数百种计算机系统上得到实现。TeX 系统的排版结果 DVI(DeVice Independent)文件与输出设备无关。DVI 文件可以显示、打印、照排,几乎可以在所有的输出设备上输出。TeX 排版源文件及结果在各种计算机系统上互相兼容。

TeX的起源

  在所有的可以排版科技著作的计算机格式化程序中,要属 Stanford大学Donald E. Knuth在1977年5月开始设计的TeX程序功能最强了. 其名字来源于希腊字母tec。正是由于这个原因, 其最后一个字母的发音并不是x,而类似于 苏格兰语单词loch或者 德语单词ach中的ch,也类似于西班牙语中的j或俄语中的kh。 这个名字强调指出了数学文本的印刷是该程序功能中不可分割的 一部分。注意真正的TeX标志为TEX,这三个字母相靠得很近,而且中间的那个E有点儿下沉。但在无格式文件中,就写为TeX。

  除此以外,Knuth还设计了另一个软件 METAFONT, 以生成字符的字体。在标准的TeX软件包中有75种不同设计 尺寸的字体,而且每种字体有八种不同的放缩比例。所用这些 字体都是用METAFONT 程序生成的。为了满足其它应用的需要,还设计了其它字符的 字体,如 古斯拉夫语或日语字母的字体,有了这体文件, 也可以把相应文本以书籍质量排版出来。

TeX 程序

  最基本的TeX程序只是由一些很原始的命令组成, 它们可以完成简单的排版操作和程序设计功能。 然而,TeX也允许用这些原始命令定义一些更复杂的高级命令。这样就可以利用低级的块结构,形成一个用户界面相当友好的环境。

  在 处理器运行期间,该程序首先读取所谓的格式文件, 其中包含各种以原始语言写成的高级命令,也包含分割单词的连字号安排模式。接着处理程序就处理源文件,其中包含要处理的真正文本,以及在格式文件中已定义了的格式命令。

  创建新格式是一件需要由具有丰富知识 程序员来做的事情。 把定义写到一个源文件中,这个文件接着被一个名叫 initex的特殊版本的TeX程序处理。它采用一种紧凑的方式存贮这些新格式,这样就可以被通常TeX程序很快地读取。


TeX的稳定性
TeX是非常稳定的程序,高德纳悬赏奖励任何能够在TeX中发现程序漏洞(bug)的人。每一个漏洞的奖励金额从1美分开始,并每年翻倍,直到目前的327.68美元封顶。然而高德纳从未因此而损失大笔金钱,因为TeX中的漏洞少之又少,而真正发现漏洞的人在获得支票后,宁愿将其裱起来留作纪念也不愿拿去兑现!
到目前为止,关于TeX的最后一个bug是被高德纳自己发现的。


几种TeX的格式

◆Plain TeX

  Knuth设计了一个名叫Plain TeX的基本格式, 以与低层次的TeX互应。这种格式是用TeX处理文本时 相当基本的部分,以致于我们有时都分不清到底哪条指令是真正的处理程序TeX的,哪条是这个特殊格式的。 大多数声称只使用TeX的人,实际上指的是只用Plain TeX。

  Plain TeX也是其它格式的基础,这些格式进一步 加深了某些人认为TeX和Plain TeX是同一件事的印象。

◆LaTeX

  Plain TeX的重点还只是在于如何排版的层次上, 而不是从一位作者的观点出发。 当然对它的深层功能的进一步发掘,需要相当丰富的 编程技巧。因此它的应用就需要高级排版和程序设计人员。

  正是由此这种原因,美国计算机学家Leslie Lamport 在二十世纪八十年代初期开发了LaTeX格式,这种 格式提供了一组生成复杂文档所需的更高级命令。 利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由TeX 所提供的强大功能,能在几天, 甚至几小时内生成很多具有书籍质量的印刷品。 对于生成复杂表格和数学公式,这一点表现得尤为突出。

  LaTeX相对于其基础Plain TeX而言,更像一个包装语言。 它可以在作者根本不知道所以然的条件下,自动给出标题,章节,表格目录,交叉索引,公式编号,文献引用,浮动图表。版面布局信息包含在类文件中, 这些类文件并不是位于 源文件中的。这些布局可以改动,也可以直接采用。

  LaTeX是在十九世纪八十年代出现的,就像其它软件那样, 它也定期地进行更新和修订。经过很多年后,到现在版本号 已固定为2.09,而修订只是用日期来区分。最近的一次大修订发生在1991年12月1日,其后直到1992年3月25日为止,还有几次小的修订。

◆LaTeX2e

  由于LaTeX相当普及,以及它在许多原本没有想像到的领域中的扩展,再加上计算机技术的日新月异,特别是价格低廉, 但功能强大的激光打印机的出现, 使得相当广泛的一类格式都冠以LaTeX的标签。 为了尝试建立一个真正的改进标准,在1989年由Leslie Lamport, Frank Mittelbach, Chris Rowley 和Rainer Sch?pf创立了LaTeX3项目。 他们的目标是建立一个最优的,有效的命令集合,这些命令是来自于各种软件包为了实现 某一目的而设计出来的。

  正如项目名称所表明的,它的目标就是得到LaTeX的一个新版本3。然而,由于这是一个长期目标,朝向这个目标 迈进的第一步就是在1994年中发行了 LaTeX2e及出版了Lamport 基本手册第二版,同时还有一本新书*,专门描述 在新系统中许多可用的扩展软件包和 LaTeX程序设计。LaTeX2e 是在LaTeX3出现之前的现行标准版本。

  实际上,在LaTeX2e出现之前,其处理字体安装和选择的一些部分已经以 新字体选择框架(或NFSS)的形式公开了,而且被许多组织 或个人集成到其软件中。这种框架有两个版本,而且不幸的 是它们并不兼容,但分别是相应于LaTeX2.09和 LaTeX2e。后来以一种完全 与2.09版本兼容的方式对NFSS 进行了重新实现。

目前的TeX系统

◆PDFTeX

    完全兼容标准的TeX,但能够给出 PDF 输出。它也可以输出标准的 DVI 。

◆e-TeX

    不仅完全 兼容标准的TeX,还支持一种“扩展模式”。在“扩展模式”中引入了许多新的特性和增强功能。这些新的特性和增强功能提供了更好的编程工具和对输出的控制。

◆Omega

   这是一个几乎是完全重新写过的,支持 Unicode 的TeX程序。Omega 有很多特征都超出了 Knuth 对TeX的原始设想。它采用了与TeX不同的方法来处理字符,使得可以处理非拉丁语系的文本。也支持从右到左,从上到下的排版方式。

◆NTS

    NTS 代表“New Typesetting System”。Knuth 已经停止发展 TeX,并决定任何超越TeX的扩展都不能被称为TeX。NTS 现在还只是一些对于TeX的后续继承者的设想和概念的集合,还不是一个实际上的系统。自然,NTS 会继承TeX的绝大部分让我们热爱的特征,并且在很多方面对其加以发展。NTS 可能最终会取代TeX或 e-TeX。

◆MLTeX

    这个TeX的扩展引入了命令 /charsubdef,使得可以更为简单方便的使用 8 bit 字符。不过,与 e-TeX相比,这只是一个微小的改进。


TeX 的优点

    1.高质量的输出:TeX遵循传统的排版规则,以排版的质量为最重要的目标。如果你把TeX的输出结果和用其它的排版软件排版相同的文本所得到的结果加以比较,你就会发现其中的区别。

    2.超常的稳定性:自从TeX出现以来,只有一些微小的改动。也就是说,十几年前的TeX文件用现在的TeX系统排版得到的结果与十几年前得到的结果是一样的。稳定性还体现在TeX系统极少会崩溃,可以处理任意大小的文件,即使你的计算机的内存很少,TeX也可自如的工作。

    3.TeX是可编程的TeX是一种 宏命令 编程语言:你可以用很少的命令来完成非常复杂的工作。如果需要的话,你也可以重新定义TeX的所有命令来得到特殊的效果。

    4.高度的灵活性:TeX自从出现以来其内核只有微小的改动。但是由于其内核的设计方式,世界上的TeX使用者可以让TeX做几乎任何工作。你可以用TeX来排版英文文本,也可以排版德文,俄文,中文等多种语言。你还可以用TeX来排版乐谱,象棋,围棋棋谱等等。

    5.简单方便TeX文档是 ASCII 码的文本文件。因此,即使你手边没有TeX系统,你也可以看懂绝大部分的内容。TeX文件的这种特点使得它占用很少的存储空间,也可以很方便的用 email 来传输。

    6.目前为止,TeX几乎在所有的计算机操作系统平台上得到实现。如:Atari, Apple,Macintosh,Unix,VMS, MS-DOS,MS-Windows 和 OS/2 等等。TeX的源文件可在不同的平台之间自由的交换,而得到的输出是完全相同的。

    7.TeX是免费软件,它的源程序也是免费的。你可能仅仅需要支付邮费,甚至于一分不花地得到适合你的TeX系统。世界上有很多非常好的TeX免费软件如:teTeX,MikTeX,fpTeX 等等。同时也有一些具有各自特点(如或多或少的所见即所得特性的)和提供专家级帮助系统的商业版本。

    8.超级技术支持: 由于TeX并不是被某个公司所垄断开发,所以世界各地的使用者设计了统一的技术支持的方式。这通常是通过因特网以 email, WWW, Usenet 或 Ftp 的方式来提供,有时也可能通过电话或传真的方式。绝大多数情况下这些技术支持都是免费的,这也是TeX的精神。

    9.TeX是一种乐趣: 使用TeX不仅仅是一种工作手段,也是一种乐趣。它有挑战,也有荣誉。很多人在熟悉了TeX之后都开始把使用TeX作为一种爱好,而不是一件枯燥无味的劳动。

TeX 的不足

    TeX不是在一个下午就能完全学会的,除非你是一个真正的天才。当你开始学习并使用它的时候,你将会不停的去翻看TeX的参考手册来寻找一个TeX命令。你也会发现TeX常常不理会你键入的命令,还给出一个让你感到迷惑的错误讯息。这一切都说明了掌握TeX需要一个比较长而且艰难的学习过程。TeX的一些扩展如LaTeX则要相对简单的多,使用起来也比TeX方便,一个新手完全可以在一个下午或者更短的时间内学会开始使用LaTeX。

    当发生错误的时候,TeX会给出一些信息来提示你。但很多情况下并不足以是你迅速准确的找到错误之所在。尤其对刚刚开始学习的新手来说更是如此。

    像TeX这种宏语言不同于其它的计算机语言,如 C,Pascal 等,大多数人并不了解。因此,当你想要写自己的宏命令时,你需要对TeX有比较深入的了解才能写出牢固可靠的宏命令。

    TeX不是所见即所得的。尽管市场上有些近似于所见即所得的商业版本,但即使与最普通的字处理软件比,也还是有不小的差距。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值