如何在没有浏览器的情况下在客户端打印?

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

标签: java printing

我正在开发一个关于体育场馆门票的Java应用程序。

问题是需要实现客户端打印机的票据打印,但应用程序正试图在服务器上找到打印机。

票证在浏览器中显示是不可接受的。

必须按下按钮自动完成。

如何解决这个问题?求助,谁知道如何实施它。

为了检测打印机,我使用PrinterJob job = PrinterJob.getPrinterJob();但是这个搜索打印机是在部署了应用程序的服务器上,而不是在客户端计算机上。

3 个答案:

答案 0 :(得分:1)

是的,有可能。如果你的目标是使用printerjob和java图形库在客户端打印机上打印,那么你需要调用servlet-applet通信。
  将jar中的代码/模块与应用程序分开,并通过applet调用客户端。 Applet将下载您的jar并将在客户端位置打印。

其他方式,使用html / jsp在网页中生成票证,使用javascript调用windows.print。当用户点击打印时,它将在客户位置打印。

答案 1 :(得分:0)

您通常无法在浏览器上执行此操作,但是您可以要求浏览器打印您从javascript创建的页面。确切地说,这是如何实现的取决于浏览器。

所以实质上你必须输出一个包含javascript的HTML文件来指示浏览器打印内容(可能在javascript中使用window.print())

答案 2 :(得分:0)

我明白了......我将尝试开发客户端应用程序并将其安装到客户端计算机上。我将使用帮助JMS链接应用程序。即,web-app将tickets_id发送到机器,我的客户端应用程序打印此票。