嘿,我想要一份报告格式,我怎样才能在 Plain TeX 中指定它是一份报告,就像在 LaTeX 中一样
\documentclass{report}
如何对纯 TeX 文档执行此操作?以及如何在纯 TeX 文档中添加图像?
答案1
这取决于你希望通过“报告”文档类做什么。例如,如果你只需要写:
\documentclass{report}
\begin{document}
Hello world.
\end{document}
然后可以在纯 TeX 中完成相同的操作:
Hello world.\bye
但是如果您需要一些更特殊的东西(来自 LaTeX 功能),那么您需要使用自己的宏进行编程。
但还有另一种选择。你可以使用OPmac 宏包例如。此宏包为普通 TeX 用户提供与 LaTeX 类似的功能(参考文献、超链接、颜色、图形、字体管理、ams-math、TOC 加索引自动生成、bib. 参考文献等)。优点是 OPmac 中的宏比 LaTeX 等效宏简单得多,因此您可以从这里开始灵感,创作自己的宏。第二个优点是作者的标记语言更简单,没有很多\begin{foo}...\end{foo}
,没有很多花括号等。标记不会隐藏核心 TeX 的问题,但它会与之协作。
我知道很多人尝试过纯 TeX + OPmac,他们发现它比使用 LaTeX 更舒适、更简单。例如,所有 OPmac 功能都记录在只有 16 页(供用户使用)的文档中,并且所有宏都有详细的技术文档。
答案2
从根本上来说,不同类型的文档之间的差异可以归结为:
- 可作为输入的内容的变化(特别是使用中的任何逻辑标记)
- 外观变化(布局)
Plain TeX 提供了一组非常小的“核心”宏来生成文档,但它们不针对任何特定的文档类型。因此,期望您要么在文件开头定义更多“重点”宏和设计决策,要么编写一个包含相同信息的辅助文件和\input
其放在文档开头。Knuth 在TeXbook当然在来源TeXbook本身(它使用一个manmac.tex
包含宏的文件来支持制作这本书)。
LaTeX 通过以下方式正式化“宏集”的概念:要求为每个生成的文档创建一个文档类。这里的想法是,大多数用户大多数时间应该专注于其内容。但是,LaTeX 文档类所能做的,只要一组宏简单地读入纯 TeX 即可。
值得注意的是,与 LaTeX 类相比,report
LaTeX 的核心类功能并不多。它们提供一些基本的逻辑命令(分段等)并做出一些基本的设计决策,但它们并不特别关注特定情况。因此,一组“实用”普通宏将提供类似的功能。