加载 hyperref、cleverref 和 subfiles 包的最佳/正确顺序

加载 hyperref、cleverref 和 subfiles 包的最佳/正确顺序

我从背面subfiles包最好在序言中最后加载。

此外,众所周知,hyperref 也建议最后加载。在另一个回答, 我明白了

先加载varioref,然后hyperref,然后cleveref

那么加载上述包的最佳顺序或推荐顺序是什么?

答案1

您所提及的软件包的推荐顺序:

Subfiles- 应首先加载此包。它旨在帮助您管理多文件 LaTeX 文档,允许您单独编译每个文件以及整个主文档。因此,通常最好先加载子文件包,以便它可以正确处理文档中包含的任何子文件。

此外,子文件通常不会与您提到的其他包(cleveref、hyperref 和 varioref)交互,因此它在加载顺序中的位置不应影响它们的行为。

如果您使用子文件来管理多文件文档,则务必在任何修改文件包含或引用方式的包(例如xr或 )之前加载它import

Varioref- 应该首先加载此包,因为它修改了 LaTeX 处理交叉引用的方式。

Hyperref- 此包应在 varioref 之后加载,因为它还会修改交叉引用并在文档中创建超链接。它通常是最后加载的,但由于 cleveref 的原因,并非如此。

Cleveref- 此包应最后加载,因为它依赖于 varioref 和 hyperref。它为交叉引用提供了附加功能,例如引用类型的自动格式化。

如果你看看cleveref指导

以下情况不是错误。它们要么是故意行为,要么是不可避免的行为,要么是由 LATEX 误解引起的:• 如果您同时使用 varioref 和 hyperref,请确保以正确的顺序加载它们,否则交叉引用将引用完全错误的内容,而不会在 LATEX 输出或日志中出现任何警告!必须按以下顺序加载包:varioref、hyperref、cleveref。

相关内容