- 所有已知的子接口:
CancelablePrintJob
,MultiDocPrintJob
public interface DocPrintJob
此接口代表一个打印作业,该作业可以打印具有一组作业属性的指定文档。实现此接口的对象是从打印服务获得的。
-
方法总结
修饰符和类型方法描述void
addPrintJobAttributeListener
(PrintJobAttributeListener listener, PrintJobAttributeSet attributes) 为指定属性的更改注册监听。void
addPrintJobListener
(PrintJobListener listener) 为该打印作业期间发生的事件注册一个监听。获取此打印作业的打印属性集。确定此打印作业对象绑定到的PrintService
对象。void
print
(Doc doc, PrintRequestAttributeSet attributes) 打印具有指定作业属性的文档。void
从此打印作业中删除属性监听。void
removePrintJobListener
(PrintJobListener listener) 从此打印作业中删除监听。
-
方法详情
-
getPrintService
PrintService getPrintService()确定此打印作业对象绑定到的PrintService
对象。- 返回:
PrintService
对象
-
getAttributes
PrintJobAttributeSet getAttributes()获取此打印作业的打印属性集。返回的属性集对象是不可修改的。返回的属性集对象是getAttributes()
方法调用时此打印作业的属性集的“快照”;也就是说,如果此打印作业的属性集的内容将来发生变化,则返回的属性集对象的内容将不会更新。要检测属性值的变化,请再次调用getAttributes()
并将新属性集与先前的属性集进行比较;或者,为打印作业事件注册一个监听器。返回值可能是一个空集,但不应是null
。- 返回:
- 打印作业属性
-
addPrintJobListener
为该打印作业期间发生的事件注册一个监听器。如果 listener 是null
,则不会抛出异常并且不会执行任何操作。如果监听器已经注册,它将被重新注册。- 参数:
listener
- 实现监听器接口的对象- 参见:
-
removePrintJobListener
从此打印作业中删除监听器。如果先前未将参数指定的监听器添加到此打印作业,则此方法不执行任何功能,也不会引发异常。如果 listener 是null
,则不会抛出异常并且不会执行任何操作。如果一个监听器被注册了不止一次,那么只有一个注册将被删除。- 参数:
listener
- 实现监听器接口的对象- 参见:
-
addPrintJobAttributeListener
void addPrintJobAttributeListener(PrintJobAttributeListener listener, PrintJobAttributeSet attributes) 为指定属性的更改注册监听器。如果 listener 是null
,则不会抛出异常并且不会执行任何操作。要确定此作业可能报告的属性更新,客户端可以调用getAttributes()
并确定感兴趣且可能报告给监听器的子集。希望更新特定作业属性更改的客户端应验证它在该集合中,但只有当属性发生更改并且作业检测到该更改时,才会对属性进行更新。更新也可能会受到作业的批处理。为了最小化打印作业处理的开销,建议只监听可能更改的属性子集。如果指定的集合为空,则不会向监听器报告任何属性更新。如果属性集是null
,那么这意味着监听作业支持的所有动态属性。如果作业无法报告任何属性更新,这可能会导致没有更新通知。如果监听已经注册,它将被重新注册。
- 参数:
listener
- 实现监听器接口的对象attributes
- 要监听的属性,或null
表示可以更改的所有属性,由作业确定- 参见:
-
removePrintJobAttributeListener
从此打印作业中删除属性监听器。如果参数指定的监听器先前未添加到此打印作业,则此方法不执行任何功能,也不会引发异常。如果监听器是null
,则不会抛出异常并且不会执行任何操作。如果一个监听器被注册了不止一次,即使是一组不同的属性,也不能保证删除哪个监听器。- 参数:
listener
- 实现监听器接口的对象- 参见:
-
print
打印具有指定作业属性的文档。对于给定的打印作业,此方法只能调用一次。再次调用它不会导致新作业被假脱机到打印机。服务实现将定义服务中断和恢复的策略。当 print 方法返回时,打印可能还没有完成,因为打印可能是异步发生的,可能是在不同的线程中。想要监控成功或失败的应用程序客户端应该注册一个PrintJobListener
。打印服务实施者应该关闭他们从客户端文档获得的任何打印数据流(即
Reader
或InputStream
实施)。健壮的客户可能仍然希望验证这一点。如果无法打印DocFlavor
,则始终会生成异常。- 参数:
doc
- 要打印的文档。它必须是此 PrintJob 支持的风格。attributes
- 要应用于此打印作业的作业属性。如果此参数为null
,则使用默认属性。- 抛出:
PrintException
- 异常还可以实现一个更准确地描述异常原因的接口FlavorException
。如果文档具有此打印作业不支持的风格。AttributeException
。如果一个或多个属性对此打印作业无效。
-