使用Java连接和打印到打印机

Java中有一种简单的方法可以执行以下操作吗?

  1. 连接到打印机(将是本地打印机和连接到机器的唯一打印机)。
  2. 在2个不同的打印机纸盘中打印2页的页面。
  3. 获取当前的打印队列数,即我有100个要打印的项目,34个当前打印,打印机队列现在应该读取66。

一些快速提示:

  • 从java打印:参见基本打印程序

  • 打印作业的状态:您可以通过使用PrintJobListener获得有用的东西:

应将此侦听器接口的实现附加到DocPrintJob以监视打印机作业的状态。 可以在处理打印作业的线程或服务创建的通知线程上调用这些回调方法。 在任何一种情况下,客户端都不应在这些回调中执行冗长的处理。

一个非常好的打印教程: http : //download.oracle.com/javase/tutorial/2d/printing/index.html

还检查我的打印机问题的答案,打印机作业API是你在寻找什么,但检查这个也将有所帮助:

如何从Java应用程序发送JTable数据到打印作业?

您的要求非常具体,因此我不确定Java打印API是否满足您的所有需求。 您可以使用JNA直接访问本机操作系统的API,这可能会获得打印队列信息。