我正在考虑有关编译器的以下事实latex
:
- 它只接受 PostScript (PS) 或 Encapsulated PostScript (EPS) 文件作为图像输入;
- 它仅生成 DVI 文件作为输出,可以转换为 PS 文件;
- 它只理解 T1 类型的字体,这是一种 PostScript 字体格式。
为什么这个编译器似乎与 PostScript 绑定得如此紧密?是否有历史原因?为什么其他较新的编译器 ( pdflatex
、xeletax
、lualatex
) 不再具有此绑定?
答案1
上述三点中只有中间那点是正确的。Classic TeX 产生 DVI 输出。顾名思义,DVI 文件与设备无关,与 PostScript 无关。
DVI 文件仅按名称引用字体和图像,因此不依赖于任何特定格式(对于字体,您只需要字体指标)
事实是,如果您使用 dvips 处理 dvi 文件,那么可以处理的图像和字体格式取决于该驱动程序。所以您的问题是“为什么 dvips 会与 PostScript 绑定”,答案基本上是它旨在生成 PostScript。
如果使用 dvipdfm(x) 处理 dvi 文件以生成 PDF 或使用 dvisvg 处理 dvi 文件以生成 svg,或使用 dvilj 处理 HP 打印机控制语言,则可处理的字体格式和图像类型会大不相同。