2016-09-29 126 views
4

我以编程方式创建了PDF文件。为此,我使用了HTML到PDF转换库。在我的PDF中有一些网页的链接。从PDF文件的新选项卡中打开链接

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

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

但是,当打开此PDF到Chrome浏览器或Firefox浏览器,并点击PDF中存在的任何链接。链接打开是相同的TAB而不是新的TAB。请帮助找出解决方案。以便我的PDF驻留在一个选项卡中,链接将在浏览器的另一个选项卡中打开。

我已经尝试

target="_blank" 

target="_top" 

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

但一切都没有为我工作。

+0

如果右键单击链接属性,通常会使用Adobe Acrobat。点击操作标签。如果列出的任何操作都将其删除,然后选择“运行Javascript”。点击添加。一个框会出现给你添加下面的JavaScript。 app.launchURL(“http://www.yourlink.com”,true);它将在新标签中打开。所以如果你可以编程,那么它可以解决你的问题。 – Prajwal

回答

6

简答:这是不可能的在一个交叉平台,保证工作的方式。

长答案: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代码。我会说这是不值得的麻烦。

相关问题