LaTeX 和 TeX 的关系可以用下面的方式描述:
- TeX 是一种由 Donald Knuth 在 1978 年创建的排版系统,它提供了一套强大的宏语言及工具用于排版文档,特别是数学、物理学和计算机科学的论文。TeX 是底层的排版引擎,它允许用户通过编程式的方式精确控制文档的版面布局。
- LaTeX 是一个构建在 TeX 之上的宏包,由 Leslie Lamport 在 20 世纪 80 年代初期开发。LaTeX 使用 TeX 作为其排版引擎,但为用户提供了更加方便、抽象化的接口来撰写和排版文档。LaTeX 通过预定义好的模板(称为类文件)和宏命令,简化了文档的排版流程,让用户更加专注于内容的编写而不是版面设计的细节。
- 总结来说,TeX 是基础设施,提供了排版文档的基本机制和工具,而 LaTeX 是建构在这些设施之上的建筑,提供了易于使用的接口和功能。实际上,大多数使用 TeX 排版系统的用户都是通过 LaTeX 这一层来进行文档的编写和排版的,很少直接使用纯 TeX 命令进行文档排版。LaTeX 简化了 TeX 的复杂性,并扩展了它的功能,使其更加适合于撰写各类文档,从简单的文章到完整的书籍。
简而言之,LaTeX 是 TeX 的一个宏集,用户通常是与 LaTeX 交互,而 TeX 则在底层工作。
从 LaTeX 处理的代码和 TeX 处理的代码之间我们可以看出 LaTeX 和 TeX 的区别:
下面是一段简单的 TeX 代码示例:
\font\myfont=cmr12 at 12pt
\myfont
Hello, world!
\bye
上面的代码用 TeX 设置字体大小并打印 “Hello, world!”。
然后,这里是一段 LaTeX 代码示例:
\documentclass[12pt]{article}
\begin{document}
Hello, world!
\end{document}
可以看到 LaTeX 更专注于文档层面的格式调整,而 TeX 的调整则更底层。
这个 LaTeX 示例设置了一个基本的文档,包含文章类别和指定了 12pt 的字体大小,然后输出 “Hello, world!”。
这两个示例展示了 TeX 和 LaTeX 两种不同水平的使用。TeX 距离排版的低层操作更近,而 LaTeX 提供了更加用户友好的接口和更复杂的宏供用户使用。在实际应用中,LaTeX 比纯 TeX 更为常用,因为它大大简化了文档的组织。
如果要编译 TeX 文档,你可以使用 tex
工具将 .tex
文件编译为 .dvi
文件,或者使用 pdftex
工具将 .tex
文件编译为 PDF 文件。
如果要编译 LaTeX 文档,你可以使用 latex
工具将 .tex
文件编译为 .dvi
文件,或者使用 pdflatex
工具将 .tex
文件编译为 PDF 文件。
如果是中文文档并且使用了 ctex 宏集,那么就使用 xelatex
编译。