xelatex、pdftex、latex 有什么编译上的差别吗?

2019-12-02 15:13发布

不同的编译方式呈现的pdf文件是一样的格式吗? 选择的时候根据什么选择呢? 小白请教 谢谢大家 是这个问题太傻了嘛...没人答呢为啥

不同的编译方式呈现的pdf文件是一样的格式吗? 选择的时候根据什么选择呢? 小白请教 谢谢大家 是这个问题太傻了嘛...没人答呢为啥
4条回答
被邀请了就尝试回答一下。个人的一些理解。 这三个编译命令直接的编译成果其实是不一样的: + `latex` : 编译的直接成果是 `dvi`,需要其他驱动如`dvipdfm(x)` 将`dvi` 转换成 `pdf`,实际上,在现在的发行版中,已经没有这个编译引擎了,你在命令行调用的 `latex` 实际上是`pdflatex`,由它编译出 `dvi`格式的文件。 + `pdflatex`:编译的直接成果就是 `pdf`,不需要其他引擎来转换成 `pdf`。 + `xelatex`: 编译的直接成果其实是 `xdv`, 名字上看是 `dvi` 的一种扩展,之不过这个格式的文件默认是在内存中生成,在编译的最后,`xelatex` 将直接调用驱动 `xdvipdfmx`(Mac OS 上在以前曾经用过 `xdv2pdf`,现在使用的也是 `xdivpdfmx`) 将其转换成 `pdf`。 不同的编译方式最终得到的 pdf 文件可能呈现出不同的样式,这是因为不同的引擎和驱动使用字体的方式不一样,而且某些宏包还会指定需要使用的编译引擎。 关于如何选择,首先应该先看使用模板的使用手册或文档,看其要求使用哪种编译引擎;如果是个人使用基本文档类撰写文章,通常情况下,西文文档使用`pdflatex`,中文文档使用`xelatex` 配合中文基础文档类(`ctex*`)。现在几乎很少使用 `latex` 进行编译了,没必要兜个大圈子。

一周热门 更多>