【问题标题】:Open link in new tab of browser from PDF file在 PDF 文件的新选项卡中打开链接
【发布时间】:2017-02-07 08:18:49
【问题描述】:

我以编程方式创建了 PDF 文件。为此,我使用了 HTML 到 PDF 转换库。在我的 PDF 中有一些网站页面的链接。

我已经通过以下方式实现了 html,然后以编程方式将其转换为 PDF。

<a target="_blank" href="http://mywebsite_url_here.html">Link</a>

但是,当在 chrome 或 firefox 浏览器中打开此 PDF 并单击 PDF 中存在的任何链接时。正在打开的链接是相同的 TAB 而不是新的 TAB。请帮助找出解决方案。这样我的 PDF 将位于一个选项卡中,链接将在浏览器的另一个选项卡中打开。

我已经试过了

target="_blank"

target="_top"

<a onclick="window.open ('http://mywebsite_url_here.html', ''); 
 return false" href="javascript:void(0);"></a>

但对我没有任何帮助。

【问题讨论】:

  • 如果您右键单击链接属性,通常使用 Adob​​e Acrobat。单击操作选项卡。如果列出了任何操作,请将其删除,然后选择运行 Javascript。单击添加。将出现一个框供您添加以下 javascript。 app.launchURL("yourlink.com", true);它将在新标签中打开。所以如果你能以编程方式制作它,那么它可能会解决你的问题。

标签: html pdf


【解决方案1】:

简短回答:以跨平台、保证工作的方式是不可能的。

长答案:PDF 中的超链接与 HTML 中的超链接不同。 PDF 并非旨在作为浏览体验的一部分进行查看。因此,PDF 超链接无法在新选项卡中打开它们,因为 PDF 不知道选项卡的概念。

有一些关于它的discussion in Adobe's forums,归结为“不是直接可能的,但您可以在 PDF 中嵌入 JavaScript 来做到这一点”。他们以 EPS 文件为例:

%!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 0 0 100 100
%%EndProlog

[ /Rect [ 0 0 100 100 ]
/Action << /Subtype /JavaScript /JS (app.launchURL\("PLACE-YOUR-URL-HERE", true\);) >>
/Subtype /Link

/ANN pdfmark

%%EOF

现在,在您尝试将此 EPS 文件嵌入您的 PDF 之前,请注意 Chrome 的 PDF 查看器有very little support for embedded JavaScript,因此不能保证它可以正常工作。它还可能会向用户发出警告,如果他们单击它,就会执行 JavaScript 代码。我会说这不值得麻烦。

【讨论】:

    猜你喜欢
    • 2019-05-04
    • 1970-01-01
    • 1970-01-01
    • 2019-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-09
    • 2012-04-25
    相关资源
    最近更新 更多