如果您使用 LaTeX,则需要包几何来定义边距大小,但是 LuaTeX 呢?
我们还需要吗几何学或者它是否有自己的命令来根据用户的喜好设置边距?
那么字距调整和突起怎么样,使用 microtype 包还是 LuaTeX 自己的命令 (*) 更好?
(*) 例如probationboundary、leftmarginkern、vkerning等等。
(**) 我正在创作一本书。
答案1
边距设置取决于文档类而不是引擎。geometry
或typearea
(对于 KOMA-Script 类)仍然需要。用于microtype
LuaLaTeX 没有问题。
答案2
忘记字体、页面布局和所有其他东西。它们现在不重要。以后再考虑它们才有意义。首先要了解内容LaTeX 文档的样子如下。 学习什么 语义 或者 逻辑 标记方式及其使用方法。 避免外观标记 并且你可以推迟大多数你担心的选择,直到你拥有做出明智决定所需的知识。
你混淆了不同的东西。你的问题建议你考虑使用 LuaTeX 而不是 LaTeX,但这没有意义。此外,你的问题的其余部分假设 LaTeX,因为你提到的软件包都是 LaTeX 软件包。
TeX本身提供了格式化源代码以生成排版文档的原语。它是引擎但我们通常不直接使用 TeX。相反,我们使用格式它提供了基于原语构建的更高级别的宏。
格式包括清楚的和乳胶,但还有其他方法。此外,还可以加载格式宏的附加宏集或重新定义,以及在文档中定义或重新定义它们。当我们使用 LaTeX 格式时,执行此操作的标准方法包括
\documentclass[]{}
和
\usepackage[]{}
该类设置文档的整体默认格式,并经常添加其他宏并重新定义现有宏。包会更改默认格式和/或添加更多宏和/或重新定义现有宏。
所有这些都会被加载,并在您编译源以生成排版输出时影响文档的处理。您可以使用上面提到的 TeX 引擎来执行此操作。但是,我们现在有其他引擎可供选择。这些包括pdfTeX,特克斯和LuaTeX。
因此,您选择:
- 引擎,例如 TeX、pdfTeX、XeTeX、LuaTeX 等;
- 一种格式,例如纯文本或 LaTeX,...;
- 附加的预定义/重新定义宏集,例如类、包等;
- 文档级选项、附加内容等
引擎和格式的选择在很大程度上是相互正交的。您可以选择纯文本和 XeTeX 或 LaTeX 和 LuaTeX 或纯文本和 pdfTeX 或 LaTeX 和 TeX 或 LaTeX 和 pdfTeX 或纯文本和 LuaTeX 或...
但是,如果你选择 LaTeX,那么还需要额外的考虑。只有极少数软件包可以仅有的完全支持特定引擎仅有的在使用特定引擎时,或者与特定引擎一起使用时需要添加兼容性代码。
例如,fontspec
和polyglossia
只能unicode-math
与 XeTeX 和 LuaTeX 配合使用。microtype
仅 pdfTeX 完全支持,LuaTeX 基本支持,XeTeX 部分支持,TeX 不支持。pstricks
直接完全支持 TeX 和 XeTeX,但需要兼容代码才能与 pdfTeX 配合使用,因为 pdfTeX 无法使用 postscript 图像,除非先将其转换为其他格式。相比之下,TeX 如果不进行转换,则无法包含除 postscript 图像以外的任何图像。
不存在神奇的公式,因为不存在用于格式化文档的各种元素的最佳组合。最佳组合取决于文档及其作者。
就编写文档的影响而言,格式之间的差异远大于引擎之间的差异。在大多数情况下,从 pdfTeX 切换到 LuaTeX 相对简单。相比之下,用纯文本编码的文档需要大量重写才能变成 LaTeX 文档。
因此,既然你正在使用 LaTeX,你应该只写一个文档来学习基础知识。在这个阶段,选择哪个引擎并不重要,你甚至不应该考虑你可能需要哪些包,直到你需要它们为止。事实上,在你有一些知识和经验之前,你甚至无法选择一个类。所以要避免特定于类的代码。从一个标准类开始book
,弄清楚基础知识。只有到那时,才有可能做出有意义的类选择。阅读你选择的类的文档,试验并继续。只有在需要时才添加包。