使用 XeTeX 有哪些缺点?

使用 XeTeX 有哪些缺点?

在 2021 年,与 pdfTeX 相比,使用 XeTeX(或 LuaTeX)有什么缺点?有一个类似的问题这里但答案大多是旧的。自那以后,情况有改善吗?例如就 Microtype 而言?

答案1

让我对标题中的问题给出一个有偏见的回答,并参考您帖子正文中的其他问题。

  1. XeTeX 目前无人维护,或者有一个功能相当的不活跃维护者。XeTeX 的工作最初由 SIL 的 Jonathan Kew 发起,Khaled Hosny 也参与其中。Jonathan 后来离开了 SIL,不再参与贡献。Khaled 的兴趣似乎也转向了 LuaTeX,他为 HarfBuzz 提供了一个自定义 Lua 接口,将复杂的脚本引入 LuaTeX。有关更多背景信息和更好的概述,请参阅A.Reutenauer,“XeTeX 的现状”,TUGboat,第 40 卷(2019 年),第 2 期

  2. 目前缺乏维护意味着 XeTeX 有一些未修复的错误。其中一些错误影响了数学排版,我个人认为 XeTeX 不再适合数学排版。这些错误有点微妙,所以你必须自己判断。这是我认为最严重的一个:https://sourceforge.net/p/xetex/bugs/87/

  3. XeTeX 中的微排版仅限于凸起。对于扩展、跟踪、字距调整和间距,根本没有后端代码。但话又说回来,微排版通常不是非常重要。事实上,LuaTeX 和 ConTeXt 的首席开发人员 Hans Hagen 曾经说过:“我自己很少使用扩张”

  4. XeTeX 生成 PDF 的方式非常奇特。LuaTeX 和 pdfTeX 默认直接输出 PDF,TeX 默认输出 DVI,而 XeTeX 则不输出任何内容。由于 XeTeX 源自 TeX,因此它不包含 PDF 输出的后端代码,但由于 OpenType 字体无法以 DVI 表示,因此它发明了自己的格式“扩展 DVI”(XDV)。运行 XeTeX 时,您仍会得到 PDF 输出,但这是因为在运行过程中,XeTeX 将中间 XDV 输入其中xdvipdfmx以生成 PDF。

    xdvipdfmx程序本身有一些怪癖。它实际上能够处理一些 PostScript 特殊字符,这意味着您可以将 PSTricks 与 XeTeX 一起使用。另一方面,这意味着它需要自己的驱动程序代码来处理颜色和图像放置。这些驱动程序通常非常复杂,需要深入了解文件格式。由于 XeTeX 的用户和开发人员基础比 pdfTeX 小得多,因此其中一些驱动程序质量很差,尤其是PGF/TikZ 驱动程序。不建议将 PGF/TikZ 与 XeTeX 一起使用。

  5. 接受 LaTeX 的学术期刊通常只接受兼容 pdfTeX 的文档。我认为这是人们不使用 XeTeX(或 LuaTeX)的主要原因。

过去,XeTeX 是唯一一款具有 HarfBuzz 字体整形功能的 TeX 引擎,这对于需要排版阿拉伯语或 CJK(中文、日语、韩语)等复杂脚本的人来说是一个很大的优势。最近,LuaTeX 也以 LuaHBTeX 的名称获得了对 HarfBuzz 的支持,因此这一优势现在已不复存在。但是,仍有一些专门为 XeTeX 编写的宏代码来支持复杂脚本。我不知道将这些代码移植到 LuaTeX 的进展如何,但我认为未来 XeTeX 的使用率可能会下降。

相关内容