0

我正在使用 Apache PDFBox 库在我的应用程序中动态生成 PDF 文件。我有带有打印按钮的 jsp 页面。当用户单击该打印按钮时,我想生成 PDF 文件,同时在浏览器上显示 pdf 文件并应用 window.print() 方法。我怎样才能在我的jsp页面中实现这一点?

4

2 回答 2

2

创建一个pdf link on your page and the link should be mapped to the actual location存在于您的服务器上的 PDF。

浏览器实际上处理如何处理 pdf(基于您的浏览器设置)....是下载它还是通过插件打开它。底线是您无法通过服务器端代码控制它。

在任何一种情况下,您都不能应用 window.print() 因为这仅适用于浏览器窗口而不适用于 pdf 插件功能,或者如果它被下载,那么他必须手动打开它。

于 2013-09-03T12:36:24.767 回答
1

有一个替代解决方案。那就是在您的html中的div中显示pdf并打印该div。

有关如何在 html div 中显示 pdf,您可以查看Display Adob​​e pdf inside a div

对于打印 div 或任何其他 html 元素,有可用的 jquery 插件。我使用了 print.js 来打印一个 html div,它也会维护你的 css。

因此,当用户单击打印按钮时,首先在 div 中显示 pdf,然后调用打印函数来打印该 div。

于 2013-09-03T13:26:53.280 回答