你能用 TeX 做你想做的一切嗎?

你能用 TeX 做你想做的一切嗎?

使用LaTeX,我知道您可以在文件中放置圖片,使用不同的字體,...並且實際上可以做任何您想做的事情(除了您的文件必須具有由您正在使用的巨集包強加的預定義樣式這一事實);相反,在 TeX 中,您完全可以根據自己的喜好自由地在頁面中配置內容。但是,在 TeX 中,似乎(至少對我來說)你不能做用 LaTeX 可以做的事情,例如,將圖片放入頁面中。這是事實還是我無知?

答案1

你問錯問題了。真正的問題是你是否能在 LaTeX 中完成所有在 TeX 中能做的事情? LaTeX 是由 Leslie Lamport 創建的一組 TeX 宏,其想法是典型的 TeX 用戶不是排版專家,即使她/他是,她/他主要關心的應該是文檔內容,而不是格式。另一方面,TeX 是一個完整的排版引擎/語言,它的創建是為了以低廉的成本生產印刷意義上相對高品質的文件。 TeX和LaTeX都完全成功地完成了最初的目標。雖然可以說您可以使用熱金屬排版(深度排版)和照相排版來製作具有更好排版品質的文檔,但使用 TeX,您可以以極小的價格獲得幾乎同樣好的效果。雖然 TeX 是印刷系統,但它並沒有消除對印刷師的需求——印刷師是根據印刷規則編輯文件佈局的專業人員。 LaTeX 也實現了其最初的目標,至少在實踐中消除了對專業印刷師創建大類文件的需求。現在,沒有數學系,也沒有多少出版商僱用印刷師。我承認典型 LaTeX 文件的排版品質是有爭議的。

現在回到你最初的問題——如果你的目標是創建一篇通用的數學文章,那麼你使用 TeX 是非常愚蠢的,因為它需要你本質上重新實現 LaTeX 的某些部分。但這並非不可能。如果您的目標是創建一個真正獨特的文檔,那麼使用 LaTeX 是愚蠢的,因為您必須與預先建立的文檔類作鬥爭,而且您仍然可能會失敗。即使像創建具有任意大小的字母的文檔這樣簡單的事情在 LaTeX 中也很重要,並且涉及到第三方軟體包的使用。

我還想提請您注意 ConTeXt,它的創建是為了以與 LaTeX 完全不同的方式輕鬆使用 TeX。 ConTeXt 並不是試圖告訴您文件應該是什麼樣子。它期望您是排版專家。透過大量使用鍵值參數,它可以輕鬆地在 TeX 中建立令人驚嘆的文件所需的時間。請注意,與 LaTeX 不同,LaTeX 需要大量第三方軟體包來產生複雜性相對適中的文檔,ConTeXt 是自包含的。您需要的一切都已在「核心」ConTeXt 中。

答案2

是的,任何可以在 LaTeX 中完成的事情當然也可以在 Plain TeX 中完成。如果您的目標是使用 Computer Modern 和七位字體寫一篇簡單的論文,或者寫一本沒有精美圖形的英文小說,Plain TeX 可能是最好的工具。如果您想添加對 UTF-8 編碼的支持,可以使用 Plain XeTeX 或 LuaTeX,這樣您也可以相當輕鬆地更改字體。就這樣。圖形並不是真正的問題,因為 PGF 和 TikZ 也可以在 Plain 上運行。

您會嘗試使用 Plain TeX 開始關鍵版本工作嗎?您會使用語法著色來實現程式碼清單嗎?多個索引、自動交叉引用和編號、多個目錄?這些必須重新實施。依章節劃分的註釋參考書目怎麼樣?不,biblatex不能在 Plain 上運行,也沒有可用的 Biber 介面。

你是從一個錯誤的前提開始的,而且你可能知道,前言 錯誤的推論

除了您的文件必須具有由您正在使用的巨集包強加的預定義樣式這一事實

這種說法是不正確的:對於像這樣的文檔類,memoir您可以輕鬆更改每一個輸出格式的小細節,並有數百個 LaTeX 套件可供您使用。還有許多其他 LaTeX 類文件甚至可以隨意自訂。

假設您想編寫一個用於數字運算的程式。好吧,你有C,不是嗎?如果你遵循你的想法,你就不會連結到 Octave、PARI-GP 或其他強迫你使用的程式他們的API。

LaTeX 就像是一組基於基本 TeX 語言建構的大型函式庫。使用它不會限制您的自由。但它避免了重新發明熱水。

相關內容