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