public interface Printable
Printable 接口由当前页面 painter 的 print 方法实现,该方法由打印系统调用,以呈现页面。构建 Pageable 时,使用 PageFormat 实例和实现此接口的实例构成的实例用于描述每个页面。调用实现 Printable 的实例,以打印页面的图形。
在 PrinterJob 上可以设置 Printable(..)。当客户端随后通过调用 PrinterJob.print(..) 启动打印时,控制被传送到打印系统,直到所有的页面完成打印。这是通过在文档中所有页面打印完成前一直调用 Printable.print(..) 来实现的。使用 Printable 接口时,只要打印系统请求,该打印就将页面内容提交给图像。
Printable.print(..) 的参数包括描述该页面可打印区域(计算适合该页面的内容所需要的区域)的 PageFormat 和页面索引(它指定请求页面的从 0 开始的打印流索引)。
要正确的进行打印,应注意以下几点:
Printable.print(..),尽管上文已说明,Printable 应期望多次调用页面索引,并期望当客户端或用户通过打印对话指定页面范围时,可以跳过页面索引。 Printable 必须检查并遵照提供的 PageFormat 参数以及页面索引。要绘制的页面格式由提供的 pageFormat 指定。所以该页面的大小、方向和可成像区域已经确定,并且必须在此可成像区域中呈现。这是正确进行打印的关键,它暗示客户端负责跟踪指定页面上所属的内容。 Pageable 获取 Printable 时,该客户端可能为每个页面索引提供不同的 PageFormat。计算页面中断必须考虑到这一点。
Pageable,
PageFormat,
PrinterJob
| 字段摘要 | |
|---|---|
static int |
NO_SUCH_PAGE 从 print 返回,表示 pageIndex 太大以及请求的页面不存在。 |
static int |
PAGE_EXISTS 从 print(Graphics, PageFormat, int) 返回,表示请求的页面被呈现。 |
| 方法摘要 | |
|---|---|
int |
print(Graphics graphics, PageFormat pageFormat, int pageIndex) 将指定索引处的页面用指定格式打印到指定的 Graphics 上下文。 |
| 字段详细信息 |
|---|
static final int PAGE_EXISTS
print(Graphics, PageFormat, int) 返回,表示请求的页面被呈现。
static final int NO_SUCH_PAGE
print 返回,表示
pageIndex 太大以及请求的页面不存在。
| 方法详细信息 |
|---|
int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException
Graphics 上下文。
PrinterJob 调用
Printable 接口,以请求将页面呈现到
graphics 指定的上下文。
pageFormat 指定要绘制的页面格式。
pageIndex 指定请求页面从 0 开始的索引。如果请求的页面不存在,那么此方法将返回 NO_SUCH_PAGE;否则返回 PAGE_EXISTS。
Graphics 类或子类实现
PrinterGraphics 接口,以提供附加信息。如果
Printable 对象中止该打印作业,那么它将抛出
PrinterException。
graphics - 用来绘制页面的上下文
pageFormat - 将绘制的页面的大小和方向
pageIndex - 要绘制的页面从 0 开始的索引
pageIndex 指定不存在的页面,则返回 NO_SUCH_PAGE。
PrinterException - 打印作业被终止时抛出。