将存储在服务器上的pdf文件打印到客户端打印机

时间:2013-09-03 12:10:16

标签: java jsp pdf printing

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

2 个答案:

答案 0 :(得分:2)

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

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

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

答案 1 :(得分:1)

有一个替代解决方案。这是在你的HTML中的div中显示pdf并打印div。

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

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

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