java - PDF打印到客户的打印机而不打开它们

标签 java pdf struts

我正在开发一个用 Java 开发的 Web 应用程序,它在 Tomcat 上运行 struts。我在网络应用程序中有如下要求:

一个 JSP 页面,其中包含一个 PDF 文件列表,每个文件都与一个复选框相关联。 JSP 页面有一个按钮。一旦用户通过选择相关的复选框选择了他想要打印的 PDF 文档,用户就可以单击按钮。

然后所有选定的 PDF 文档都应发送到特定的本地打印机(即连接到客户端机器的打印机,用户从那里访问 Web 应用程序)。不应在 Acrobat Reader 或浏览器中打开所选的 PDF 文件。 PDF 文档在发送到打印机时不应对用户可见。

有人可以帮我实现这个要求吗?

最佳答案

使用 Internet Explorer 和 ActiveX 是可能的。使用 Google 搜索“自动打印”和“静音打印”。为此,您可能必须降低 Internet Explorer 中的安全设置。

我们在这里将它用于我们客户的一些内联网。

对于 Firefox,您可以通过 javascript 触发打印对话框。 (http://stackoverflow.com/questions/975652/silent-print-a-embedded-pdf) 如果是这种情况,您可以通过在 about:config 中设置 print.always_print_silent=true 来禁用 FF 中的打印对话框。

我从来没有自己做过,所以我不能确定它是否像 ActiveX 那样工作。

对于 Chrome,请求与 FF 相同的功能时会出现问题。参见 https://code.google.com/p/chromium/issues/detail?id=31395 .

关于java - PDF打印到客户的打印机而不打开它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7282116/

相关文章:

java - 在Struts 1中,如何指定输入页面URL而不是JSP的路径

java - 如何为 EntityManagerFactory 设置 Hibernate 拦截器

java - Couchdb:读取 Java 中的 View

java - 如何在 Java 中创建具有多个模式的 XML 文档?

tomcat - 帮助 Struts Action 映射

java - 使用 OR 测试 DynaActionForm 属性是否不为空

c# - 声明类变量 (List) 或将其发送给许多函数。什么是更好的?

java - Mandrill/Java - 附件损坏

Python PDF 挖掘获取每一行文本的位置

java - iText 7 - 将 PDF 图层 (OCG) 与基础 PDF 合并