为什么 hyperref 会推翻这么多事情?

为什么 hyperref 会推翻这么多事情?

一个非常有用的包是hyperref-package。然而,很多时候这个包会干扰 LaTeX 文档中的其他包或结构。

那么,是什么hyperref让它推翻了这么多的事情呢?

注意:我没有添加任何具体的例子,因为我认为你们大多数人都知道我的意思。例如:人们在回答问题时经常会写

是否与……配合使用hyperref

尽管原帖者在问题中从未提到过这个包。这表明这hyperref确实是个特别的东西。

答案1

我认为在这种情况下“干涉”和“否决”是无用的术语。该hyperref软件包需要做很多事情,这些事情在 TeX 的原始设计、后来的 LaTeX 格式或许多流行的软件包中从未预料到hyperref(通常早很多年)。因此,通常需要加载hyperref 最后的——除了几个众所周知的例外。请参阅帖子哪些包应该在 hyperref 之后加载而不是之前加载?以获取此类软件包的列表。

只要hyperref满足最后(或几乎最后……)加载的要求,您就不会遇到有害干扰。好吧,可能有一些真正古老的软件包确实与 不兼容hyperref;但是,无论如何都不应该使用这些软件包,因为通常有更新、更好的替代品可供选择——而且它们几乎总是与 兼容hyperref

答案2

主要问题是插入锚点,它是作为链接目标所必需的。

答案3

如果 LaTeX 是在网络之后设计的,它的核心就会包含超链接功能,但事实并非如此,所以 hyperref 必须修改理想情况下包不会修改的部分。

相关内容