Java打印程序设计.docx
《Java打印程序设计.docx》由会员分享,可在线阅读,更多相关《Java打印程序设计.docx(10页珍藏版)》请在优知文库上搜索。
1、Java打印程序设计1 MeF在我的的实际I:作中,常常须要实现打印功健.但由于历史缘由,JaVa供应的打印功能始终都比拟弱.事实上般初的Jdk根本不支持打印,宜到MkI.1才引入了很轻欧的打印支持.所以.在以前用Java/AppleVJSP/SerVtet设计的程序中,较困难的打印都是通过调用ACUVeXQCX控件或者VBNC程序来实现的,特别麻烦,事实上,SUN公司也始终致力于JaVa打卬功能的完善,而Java2平台那么用绻行r一个强他的打印模式的开端,该打印模式以Java2D图形包充分结合成体,更令人蚁招的是,新发布的jdk1.4那么供应了套完整的“Java打印效劳APr(JaVaPri
2、ntSerViCeAPI),它对已有的打印功能是主动的补充.利用它,我们可以实现大局部实际应用再求,包括打印文字、图形、文件及打印预览等等。本文将通过一个详细的程序实例率说明如何设计JaVa打印程序以实现这些功能.并对不同版本的实现方法进展分析比拟.吊电大家能从中获得一些有益的提示.2 Java中的打印2.1 Java的打印APlJava的打印API主要存在包中.而jdk1.4新增的类那么主要在在于javax.print包及其相应的子包和中.共中Javaxpnnt包中主要包含打FlJ效劳的相关类,而那么包含打印事务的相关定义.那么包括打印效劳的可用解性列表等.22如何实现打印要产生个打印,至少
3、很要考虑两条:殖吃个打印效劳对象.这可通过三种方式实现I在Wkl.4之前的版本,必须要坡现接1.l或潮过TOOh1.getDefaUltToOlkiH).gelPnnUob来茨将打印效劳对象:在jdk1.4中那么可以通过来ft找定位个打印效劳时型.须要开场一个打卬工作.这也有儿种实现方法:在jdk1.4之前可以通过java.awt.print.PrintJob(jdk1.1供应的,现在1.l经很少用Tj调用Print或PrintAll方法开场打印工作:也可以通过的PrintDiaIOg显示打印对话框.然后通过Pdnl方法开场打印:在jdk1.4中那么可以通过的PnntDiaIog显示打印对话框
4、,然后谡用Pnnt疗法开场个打印工作.2.3打印机对话柢Printable的打印对话框开场打印工作之前,可以通过PrinterJobprintDiaIog来显示一个打印对话框,它给用户一个时机以选择应当打印的页码范用,弁可供用户变更打印设置.它是一个本地对话框.于实上,当从一个PrintabIe对象进展一个打印工作时,打卬对象并不知道须要打印多少页.它只是不停地商用print方法,只要Prin方法返回Printable.PAGE-EISTS值.打印工作就不停地产生打印页,直到Pnnl方法返回PnntabIe.NO_SUCH_PAGE时.打印I:作才停侬.由于打印工作只有在打印完成后才进屣精确的
5、页数计鸵,所以在对话框上的页码范国是尚未初始化的1,9999我仃可以通过构建个对望传递给打印对敞:也可以通过指定的格式让仇须要打印的页数并传递给打印对象使其精确地知道要打印多少页.2 3.2ServiceUI的打印对话框与Printable的对话极不同的是,.jdk1.4供应ServiceUI的打印机对话板的然省行为已经用新的API更改了:籍有状况下对话框不显示,我归必需运用ServiceUI类调用PrintDiaJog方法创立如卜,所示的打印对话框.3 JaVa打印程序设计实例3.1 打卬文本3.1.1 应用场景假设我们须要打印个窗体的某个文本编辑域(可能只有几行,也可能包含多页)的内容,并
6、且俗页公多打卬54行,如何实现嗯?312诉决方法根木思路如下:首先我们须要实现PrintabIe接口,然后依据彩页G多54行的格式计。共须要打印多少页,当打印文本的按钿被点击时,执行相应的打FlJ动作.打印文本的详细操作可通过Graphics2D的drawString方法来实现.1.实HePrintabIe接1.JrGraphic指明打印的图形环境:PageFormat指明打印页格熄页面大小以点为计量单位,1点为1英寸的1/72,1英寸为25.4亳米,A4尔大致为595842点):page指明页号Vpublicintprint(Grapicsg,PageFormatpf.intpage)thr
7、owsPrinterExceptionGrapics2Dg2=(Graphics2D)g;g2.setPaint(Colorblack);设置打印色为黑色if(page=PAGES)当打印页号大于须瞿打印的总页数时,打印工作完毕returnPrintable.NO_SUCH_PAGE;g2.tra11slate(pf.getlmageableX(),PtgetlmageabIeY();转换坐标.瑜定打印边界drawCuentPageTet(g2.pf.Page打印当前页文本returnPrintable.PAGE_EXISTS;存在打卬页时,接着打印工作)广打印指定页号的详细文本内容/priv
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 打印 程序设计