【问题标题】:Relative Links in PDFPDF 中的相对链接
【发布时间】:2011-03-01 15:43:17
【问题描述】:

需要一些关于下一步采取什么行动的建议。

编写了一个 ASP.Net 应用程序。该应用程序的一部分涉及能够查看 PDF。最初查看的 PDF 充当访问其他 PDF 文档的索引。您单击索引 PDF 中的链接,它会跳转到另一个 PDF 文件。法律文件、协议等

此方案在某些计算机上有效,而在其他计算机上则无效。我设法找出问题所在。在一些计算机上,最初的 Index PDF 托管在浏览器中,而在其他一些计算机上,它实际上是跳出浏览器并直接进入 Adob​​e Acrobat。一旦 PDF 跳出浏览器并进入 Acrobat,索引 PDF 中的相关链接就会停​​止工作,因为它是通过 Acrobat 托管的客户端,但它尝试访问的其他 PDF 位于服务器上。

我弄清楚了为什么有些计算机会停留在浏览器中,而有些计算机又会跳出来。 Acrobat 本身有一个选项可确定此行为。它在 Edit--> Preferences ----> Display PDF in Browser 下。

我陷入了困境,因为我无法控制 PDF 文档本身以及它们的编写方式,而且我显然无法控制在每台计算机上的 Acrobat 中选择的选项。我的问题还因为我们公司最近购买了一款名为 Nuance 的新 PDF 阅读器而更加复杂,该阅读器将很快在公司范围内推出,我认为它甚至无法选择在浏览器中托管 PDF。

如果我在 HTML 中创建索引,我可以得到我需要的工作,但问题是我不编写索引并且编写索引的人没有接受过 HTML 培训。我可以让编写索引的人从相对链接更改为绝对链接,但是我遇到了一个问题,如果我们更改托管 PDF 文件的位置怎么办?所有的链接都会再次断开?我认为我们被相对 URL 困住了,但我怎样才能让它发挥作用呢?

我正在考虑在 Silverlight 中托管 PDF?

寻找任何想法或想法?

谢谢。

【问题讨论】:

    标签: asp.net silverlight pdf acrobat


    【解决方案1】:

    Silverlight 不会在这里为您提供帮助。

    真正的解决方案是找到一种更好的方法来创建索引文档。索引文档内容到底有多复杂?

    如果您不想用 HTML 培训这些索引的作者,那么您能否为他们提供一个简单的工具,让他们可以用来描述内容。然后,您可以让代码服务器端动态生成 HTML(甚至是 PDF)。

    【讨论】:

    • 索引一点也不复杂。想想作为链接的“目录”。我也考虑过自定义工具路线。我希望避免它,因为截止日期临近并且自定义工具需要努力。
    • @Hunter:现在如何硬编码绝对路径并使用索引创建工具进行破解。到底有多难?
    • 这对于创建的任何新索引都不是问题,但有数百个旧索引需要更改。这最终会发生,但如果我按照您的要求进行操作,我将不得不要求他们更改两次。不会让他们开心。
    • @Hunter:那么是时候真正开始使用索引创建者了。外部 PDF 查看器中的相对 URL 问题完全难以解决。
    【解决方案2】:

    您需要的是一个简单的重定向器 ASPX 页面,您可以在 PDF 文档中使用其 URL。将 PDF 的路径放入数据库中。为每个 PDF 提供一个 ID。 ASPX 页面应该接受 ID 作为参数,在数据库上进行查找,然后 response.redirect 到 PDF 的当前位置。您可以在 PDF 中使用基于此 ASPX 页面的 URL。如果您使数据库保持最新,那么 PDF 文档中的链接将始终指向正确的位置。

    在数据库中

    1. http://someserver/somepath/abc.pdf
    2. ttp://anotherserver/apath/sdf.pdf

    PDF 文档中的链接

    1. http://yoursite.com/pdf_redirect.aspx?id=1
    2. http://yoursite.com/pdf_redirect.aspx?id=2

    【讨论】:

      猜你喜欢
      • 2014-02-15
      • 1970-01-01
      • 1970-01-01
      • 2015-12-04
      • 1970-01-01
      • 2022-06-15
      • 1970-01-01
      • 2014-12-27
      • 2013-07-11
      相关资源
      最近更新 更多