具体java打印方法的实现


0/Printable接口由当前页面 painter 的 print 方法实现,该方法由打印系统调用,以呈现页面。
1/Pageable接口由 PageFormat 和 Printable 组成。

在Printable接口中也可以进行多个页面打印;Pageable接口可以对每个Printable指定单独的PageFormat(指定页面大小和方向)。
在《简单打印实例》文章中使用的就是Printable接口直接打印。

下面用Pageable进行实现。
//通俗理解就是书、文档
Book book = new Book();
//设置成竖打
PageFormat pf = new PageFormat();
pf.setOrientation(PageFormat.PORTRAIT);
//通过Paper设置页面的空白边距和可打印区域。必须与实际打印纸张大小相符。
Paper p = new Paper();
p.setImageableArea(72,72, 590,840);//A4(595 X 842)
pf.setPaper(p);
//把 PageFormat 和 Printable 添加到书中,组成一个页面
book.append(new PrintTest(), pf);
//获取打印服务对象
PrinterJob job = PrinterJob.getPrinterJob();
//设置打印类
job.setPageable(book);
///
//用Printable进行多个页面打印
//打印封皮、打印内容、打印底面
///
switch(pageIndex){
case 0://封面
  g2.drawString("公开机密", (float) x, (float) y);
  return PAGE_EXISTS;
case 1://内容
  g2.drawString("祖国统一是中华民族的历史使命!", (float) x, (float) y);
  return PAGE_EXISTS;
case 2://底面
  g2.drawString("中华民族 2006 印", (float) x, (float) y);
  return PAGE_EXISTS;
default:
  return NO_SUCH_PAGE;
}
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值