BBS水木清华站∶精华区
发信人: LINU (落梅如雪), 信区: Java
标 题: Java 打印
发信站: BBS 水木清华站 (Sun Jan 7 23:01:04 2001)
1.Java 2 Printing Api
对一个GUI程序来说,打印和打印预览是现在大多数程序都要实现的功能。
在Java2之前,显然设计者们做的不太好。
但Java2 之后大为改观。先介绍一下Java2提供的与打印有关的API.
1.1 PrintJob
class java.awt.print.PrinterJob
这个类是Java2中控制打印的最主要的一个类。
一个典型的打印过程如下:
PrinterJob prnJob=PrinterJob.getPrinterJob(); //返回一个PrintJob实例
prnJob.setPrintable(myPrintable); //设置PrintJob的可打印对象
if(!prnJob.printDialog()) //显示一个与平台有关的打印dialog.
// 比如在windows里就是大家熟悉的一个
// PrintDialog有OK,Cancel的button,还有设置打印范围的
//文本框等。如果按了Cancel,则返回false.不打印
return;
prnJob.print();//否则,调用print方法,进行打印。
其中的可打印对象是一个实现了Printable 接口的对象。
凡是希望打印的对象都要实现此接口。
1.2 Printable 接口.
abstract interface java.awt.print.Printable
该接口只定义了一个方法:print,
有三个参数:
Graphics graphics:类似于VC中的CDC,即设备环境,graphics context
注意:这个graphics 可以在 print方法中转换为Graphics2D对象。
就可以利用最新的2D功能
PageFormat pageFormat: 关于页格式的一个对象。由此对象可以得到或设置
页的可打印范围,打印方向等等。
int pageIndex:将要打印的页的编号,由零开始。
print 方法的返回值有两个: PAGE_EXISTS 当本页成功打印
NO_SUCH_PAGE 当index太大或不存在本页。
太晚了,睡去先。
--
※ 来源:·BBS 水木清华站 smth.org·[FROM: 166.111.216.18]
BBS水木清华站∶精华区