![\hyperbaseurl 适用于 .html,但不适用于 .pdf](https://linux22.com/image/240937/%5Chyperbaseurl%20%E9%80%82%E7%94%A8%E4%BA%8E%20.html%EF%BC%8C%E4%BD%86%E4%B8%8D%E9%80%82%E7%94%A8%E4%BA%8E%20.pdf.png)
我有一个网页,其中保存了我的 PDF 文档,这些文档通过超链接与其他 HTML 页面和 PDF 连接。
我的所有 PDF\hyperbaseurl{http://ziga-lausegger.netau.net/}
顶部都有命令。此命令应将基本 URL 添加到\href{}
文档中的任何其他超链接前面。但我注意到,如果:
\href{}
命令以.html
类似\href{foo.html}
基本网址结尾,\href{}
命令以.pdf
类似\href{foo.pdf}
基本 URL 结尾,但不会在前面添加。
我的问题根源是什么?如何修复?这是hyperref
软件包的 BUG 吗?
答案1
该hyperref
软件包会自动检测网页链接和文件链接之间的差异:使用标准设置,您将看到链接的边框颜色不同。该\hyperbaseurl
宏与 URL 有关,因此适用于被检测为网页的链接,但不适用于被检测为文件(被视为本地)的链接。
extension
您可以通过设置为空值来禁用这种行为差异:
\documentclass{article}
\usepackage{hyperref,trace}
\hyperbaseurl{http://www.foo.bar/}
\hypersetup{extension = }
\begin{document}
\href{foo.html}{text} text \href{foo.pdf}{text}
\end{document}