![如何让 hyperref 了解 Firefox 扩展的内部协议?](https://linux22.com/image/333158/%E5%A6%82%E4%BD%95%E8%AE%A9%20hyperref%20%E4%BA%86%E8%A7%A3%20Firefox%20%E6%89%A9%E5%B1%95%E7%9A%84%E5%86%85%E9%83%A8%E5%8D%8F%E8%AE%AE%EF%BC%9F.png)
我想在.pdf
文件中创建一个超链接,以便在 Zotero 窗格中打开 Firefox,其“URL”为chrome://zotero/content/tab.xul
:而不是http
或ftp
,这里使用的协议是chrome
,这是 Firefox 用于扩展的内部协议之一。
不幸的是,当点击以下文件生成的链接时什么也没有发生:
\documentclass{article}
\usepackage{hyperref}
\begin{document}
\href{chrome://zotero/content/tab.xul}{Zotero}%
\end{document}
因此我的问题是,如何了解hyperref
Firefox 扩展的内部协议?
答案1
以下生成更易读的 PDF 文件:
\pdfobjcompresslevel=0
\documentclass{article}
\usepackage{hyperref}
\begin{document}
\href{chrome://zotero/content/tab.xul}{Zotero}%
\end{document}
页面流仍被压缩,但链接存储在 PDF 文件中未压缩的注释对象中。该文件可以通过文本查看器(或编辑器)检查:
23 0 obj
<<
/Type /Annot
/Border[0 0 1]/H/I/C[0 1 1]
/Rect [147.716 656.239 177.964 665.039]
/Subtype/Link/A<</Type/Action/S/URI/URI(chrome://zotero/content/tab.xul)>>
>>
endobj
可以看出,URL 未发生改变。因此问题在于 PDF 查看器,它不知道如何处理协议chrome
,不知道应该启动哪个程序。