【发布时间】:2022-06-15 13:07:48
【问题描述】:
我想在 PDF 中添加指向某些文本的链接,该链接将打开位于同一文件夹中的另一个 PDF。我希望使用相对寻址,以便 PDF 套件可以传输到其他用户和计算机。我希望这可以在 Linux 和 Mac 上运行。 尽管做出了承诺,LibreOffice Draw 仍将链接地址写为完整路径。因此,如果与另一个用户一起带到另一台计算机,则链接将无法工作。 我尝试使用 vi 手动编辑 PDF 文件并更改了链接语法;
<</Type/Annot/Subtype/Link/Border[0 0 0]/Rect[940.9 480.3 1200.7 507.9]/A<</Type/Action/S/URI/URI(Content/Information.pdf)>>
目标文件“Information.pdf”位于子目录“Contents”中。
在使用 Document Viewer 的 Linux 上,它可以工作!在 Apple 上,预览(PDF 查看器)解释目标文件需要由某些应用程序打开。 Adobe Reader 也不喜欢这种语法。我尝试使用关键字“file:”为文件名添加前缀,该关键字适用于完整路径,但不适用于相对寻址。 有谁知道什么语法对我有用
【问题讨论】:
-
相对外部链接在查看者之间可能变化无常,因此不具有普遍性,理论上您可能会劫持用户的视图,因此更多安全意识的查看者的行为可能会有所不同。但是,作为同一个文件夹,我会使用 ./contents/file.pdf 和 /../contents/file.pdf 或 //./contents/file.pdf 测试您的目标,但这些目标可能非常特定于查看器,测试范围。 A 类型地址是 ``www a href` 文件更正常使用类似 > 但你应该再次使用 RTLM(阅读链接手册)archive.org/details/pdf1.7跨度>
-
我尝试了 KJ 的语法建议,但没有任何效果。我收到了一些来自旧打印机帮助文件的 PDF 文件。一个 PDF 上的按钮链接到同一文件夹中的另一个 PDF。遗憾的是,这些文件是某种二进制格式,并且引用的文件名不可见。尽管如此,它表明这是可以做到的。 PDF 参考手册不包含本地相对寻址信息,但确实提到了到内部页面的链接。有一些 Python 程序可以为 PDF 添加链接。论坛建议他们是错误的。我可能不得不探索这种方法。
-
像 VI 这样的文本编辑器可能是您的问题的原因,因为 PDF 是二进制密集型(混合混合),因此链接的位置可能被编码在压缩流中。如果没有样本,除了 acrobat 强度编辑之外,您几乎无法说出您需要什么。 50 美元的编辑器可能在图形上做得很好,但在没有解压缩的情况下在文本编辑中修改并不总是那么容易。任何带有这对拉链的样品都可以发布到transfer.sh,并且在 30 天内,上面的链接将有助于其他人查看问题
-
引用本地文件的打印 PDF 示例已压缩。我用 Python