java printerjob打印_利用PrinterJob类实现打印控制

无论采用哪种语言来开发应用系统,打印功能总是少不了的。为了节省Java程序开发人员的工作量,在Java语言中专门提供了一个PrinterJob类来帮助开发人员实现打印控制的功能。

本文将给大家介绍一下如何使用PrintJob类来实现打印作业。

一、PrinterJob类的功能。

在Java语言中,实现打印控制的类也很多。但是笔者比较倾向于使用这个PrintJob类。它是在Java语言中控制打印作业的主要类。开发人员在编写代码的时候,可以调用这个类中的方法来完成一些打印功能。如实现设置添加打印任务、打开打印对话框、执行页面打印等等作业。一般来说,通过这个类就可以实现大部分的打印作业。不过需要注意的是,这个类是用来实现一些普通的打印功能。如果涉及到比较特殊的打印指令,虽然通过方法重构等手段也可以实现,但是比较复杂。在Java语言(Java语言中定义常量注意事项解析)中针对特殊的打印选项,也有一些对应的类。所以在开发打印功能的时候,这个PrinterJob类是最基础的类。在了解了这个类之后,再去适当了解其他的一些特殊的打印类。如此的话,程序开发人员才能够以最少的代码、最少的时间来实现比较复杂的打印控制。特别是用户有一些比较特殊的打印需求时,结合其他的类可以达到事半功倍的效果。如果从零开始来开发新方法,那是得不偿失了。程序开发人员即使不能够记住Java语言中所有的打印类,也必须要对他们有一个大概的印象。至少当用户提出某个打印需求时,需要知道在Java语言的类中是否有与之相对应的类。然后再通过查询相关的资料来调用这个类。(子类如何青处于蓝而胜于蓝)

二、使用PrintJob对象。

跟其他类一样,如果需要使用这个PrintJob类的话,则需要先利用这个类来创建打印对象。不过程序开发人员需要注意的是,这个PrintJob类采用的是单例模式,也就是说,他必须通过静态方法来获取唯一的实例。如一般情况下,我们程序开发人员可以采用如下的语句来创建对象:PrintJob pjob=PringJob.getPrinterJob()。一但执行这条语句,就会创建PringJob类的实例对象。注意这个方法必须是静态的。当这个实例对象创建之后,在程序中这个对象就是唯一的。在其他模块或者以后需要再次调用这个方法时,就可以直接引用这个对象的方法,而不需要再次创建。这就是静态方法所带来的好处。由于各个模块采用相同的打印方法,这也会后续的打印队列等功能提供了实现了可能性。

三、调用PringJob对象的常见方法。

在PringJob类中,定义了很多的方法,如设置打印任务名称、设置打印页面、追踪打印状态等等。所以作为Java程序开发人员是一件很开心的事情。因为在开发打印功能的时候,基本上只需要直接引用类中的方法即可,而很少需要重新开发新的功能。

当有多个文档在打印的时候,在打印窗口可以看到有多个待打印的文档在排队。这是通过setJobName方法来实现的。PrinterJob类可以调用访问打印任务名称的属性,这个属性就是现实在打印任务列表中的相关打印任务。在这个类中,设置打印任务主要是通过setJobName方法来实现的。这个方法会接收String类型的字符串作为其参数,然后会利用这个参数的值作为打印任务的名称。不过这个方法只是在打印窗口中显示打印的名称,那么这个打印的名称到底是什么呢?此时就需要用到另外一个方法 getJobName方法。如使用String printname=pjop.getJopName()语句,来获得打印的名称。当调用这个方法时,会返回一个字符串类型的值,它就是打印窗口中显示的打印名称。利用这个方法获得这个打印名称的值之后,再将其传递给setJobName方法,就可以让打印窗口显示打印的名称了。所以,这两个方法,一是获取打印的名子,二是将打印的方法显示在打印窗口中,他们往往是同时出现的,相互配合实现这一组功能。这里需要注意的是,在使用getJopName()成员方法获得打印任务的名称时,一般情况下就显示打印文档的名子。但是如果用户有特殊的要求,如在一些共享打印服务器或者网络打印服务器中,除了要显示打印文档的名字,

你可能感兴趣的:(java,printerjob打印)