什麼是TeX?

編輯

TeX (X或 )是由Donald Knuth創造的基於低級程式語言的電子排版系統,利用TeX能夠對文章進行十分精美的排版。TeX提供了一套功能強大並且十分靈活的排版語言,它多達900多條指令,支持if-else判斷語句和運算(運算在文檔編譯的過程中執行)等功能,並且TeX有宏功能,用戶可以不斷地定義自己適用的新命令來擴展TeX系統的功能。許多人利用TeX提供的宏定義功能對TeX進行了二次開發,其中比較著名的有美國數學學會推薦的非常適合於數學家使用的 TeX以及適合於一般文章、報告、書籍的LaTeX系統。

TeX系統是公認的數學公式排得最好的系統。美國數學學會(AMS)鼓勵數學家們使用TeX系統向它的期刊投稿。世界上許多一流的出版社如Kluwer、Addison-Wesley、牛津大學出版社等也利用TeX系統出版書籍和期刊。

大部分的TeX系統都是免費的。Donald Knuth教授還公開了他的全部源程序。TeX系統目前已經在數百種計算機系統上得到實現。TeX系統的排版結果DVI(Device Independent)文件與輸出設備無關。DVI文件可以顯示、列印、照排,幾乎可以在所有的輸出設備上輸出。TeX排版源文件及結果在各種計算機系統上互相兼容。

TeX的強大之處在於其能夠對文檔的排版進行非常精細的操作,但也會造成難度的提高和耗時增加。1977年,隨著數字印刷的逐步發展,Donald Knuth發現了數字印刷的潛力並開始TeX排版引擎的編寫工作,以改善日益惡化的印刷質量。我們現在用的TeX排版系統發布於1982年,在1989年為了更好地支持多國語言又進行了一些改進。TeX具有很好的穩定性,能夠在許多不同種類的計算機上運行,幾乎不出現錯誤。

TeX一詞來源於希臘語「τεχνολογία」(「technologìa」),意為「科技」;它的第一個音節 「τεχ」與「TeX」相似,因此英文名取作「TeX」。TeX系統以逐漸收斂到 的數字作為版本號,現在的TeX版本為3.1415926。

什麼是LaTeX?

編輯

LaTeX (發音為「Lah-tech」或「Lay-tech」)是由Leslie Lamport開發的當今世界上最流行和使用最為廣泛的TeX宏集。它構築在PlainTeX的基礎之上,並加進了很多的功能以使得使用者可以更為方便的利用TeX的強大功能。使用LaTeX基本上不需要使用者自己設計命令和宏等,因為LaTeX已經替你做好了。因此,即使使用者並不是很了解TeX,也可以在短短的時間內生成高質量的文檔。對於生成複雜的數學公式,LaTeX表現的更為出色。LaTeXLaTeX3項目維護,很多使用者對LaTeX加入了很多補充擴展,例如為LaTeX開發宏包樣式,其中的一些已經包含在很多LaTeX軟體中,可以在CTAN上獲得更多的擴展宏包。

很明顯,與Openoffice.orgMicrosoft Word等這些所見即所得WYSIWYG)排版程序相比有如下的一些缺點:

  • 一般來說是不能在輸入文章的同時看到最終的輸出效果,但是將文章用LaTeX編譯之後,是可以在屏幕上預覽最終的輸出效果的。
  • 儘管在預先定義好的版面中可以調節一些參數,設計全新的版面還是很困難的,需要耗費大量的時間。
  • 需要掌握一些LaTeX的排版命令。
  • LaTeX不適合於排版非結構化的、無序的文檔。

LaTeX與一般字處理軟體相比的優點有:

  • 提供專業級的排版設計,使你的文檔看起來如同印刷好的一樣。
  • 可以更方便地排版數學公式。
  • 用戶僅僅需要掌握少數容易理解的,用來說明文檔邏輯結構的命令,而無需對實際的頁面設計做胡亂的修補。
  • 可以很容易地生成腳註、索引、目錄和參考文獻等複雜的結構。
  • 有大量免費的可添加宏包,協助你完成許多基本的LaTeX未直接支持的排版任務。例如,支持在文檔中插入PostScript圖形的宏包和排版符合各類標準的參考文獻的宏包等。
  • TeX作為LaTeX的格式化引擎,是免費軟體並且具有極高的可移植性,因此它幾乎可以在任何硬體平台上運行。

LaTeX源文件是普通的文本文件格式,其中不僅包括所要排版的文本,還包括LaTeX所能識別的排版命令。你可以使用任何文本編輯器創建LaTeX源文件。LaTeX支持DVI和PDF格式的輸出,如配合其他軟體可以很容易地生成PostScript、PNG、JPG等格式的輸出。

與TeX的關係

編輯

LaTeX是建立在TeX基礎上的宏語言,也就是說,每一個LaTeX命令實際上最後都會被轉換解釋成幾個甚至上百個TeX命令。但是,普通用戶可以無需知道這中間的複雜聯繫。就象編程的時候如果使用一些已經編譯好的函數庫可以使我們僅僅用幾個命令就實現很多功能一樣,LaTeX根據人們排版文章的習慣,定義了許多命令和模板,通過這些命令和模板,我們可以很快的得到漂亮的排版結果。

與MiKTeX、fpTeX、teTeX、CTEX的關係

編輯

TeX在不同的硬體和作業系統上有不同的實現版本。這就像C語言,在不同的作業系統中有不同的編譯系統,例如Linux下的gccMicrosoft Windows下的Visual C++等。有時,一種作業系統里也會有好幾種的TeX系統。目前常見的Unix/Linux下的TeX系統是teTeX,Windows下則有MiKTeXfpTeXCTeX指的是CTeX中文套裝的簡稱,是把MiKTeX和一些常用的相關工具,如GSviewWinEdt等包裝在一起製作的一個簡易安裝程序,並對其中的中文支持部分進行了配置,使得安裝後馬上就可以使用中文。