java.awt.print

Class PrinterJob


public abstract class PrinterJob
extends Object

This class controls printing.

Constructor Summary

PrinterJob()
Initializes a new instance of PrinterJob.

Method Summary

abstract void
cancel()
Cancels an in progress print job.
PageFormat
defaultPage()
Returns an instance of the default page which will have the default paper and orientation.
abstract PageFormat
defaultPage(PageFormat page_format)
Clones the specified PageFormat object then alters the clone so that it represents the default page format.
abstract int
getCopies()
Returns the number of copies to be printed.
abstract String
getJobName()
Returns the name of the print job.
PrintService
getPrintService()
Return the printer for this job.
static PrinterJob
getPrinterJob()
Creates a new print job.
abstract String
getUserName()
Returns the printing user name.
abstract boolean
isCancelled()
Tests whether or not this job has been cancelled.
static PrintService[]
lookupPrintServices()
Find and return 2D image print services.
static StreamPrintServiceFactory[]
lookupStreamPrintServices(String mimeType)
Find and return 2D image stream print services.
abstract PageFormat
pageDialog(PageFormat page_format)
Displays a dialog box to the user which allows the page format attributes to be modified.
PageFormat
pageDialog(PrintRequestAttributeSet attributes)
abstract void
print()
Prints the pages.
void
print(PrintRequestAttributeSet attributes)
Prints the page with given attributes.
abstract boolean
printDialog()
Displays a dialog box to the user which allows the print job attributes to be modified.
boolean
printDialog(PrintRequestAttributeSet attributes)
Displays a dialog box to the user which allows the print job attributes to be modified.
abstract void
setCopies(int copies)
Sets the number of copies to be printed.
abstract void
setJobName(String job_name)
Sets the name of the print job.
abstract void
setPageable(Pageable pageable)
This sets the pages that are to be printed.
void
setPrintService(PrintService service)
Change the printer for this print job to service.
abstract void
setPrintable(Printable printable)
Sets this specified Printable as the one to use for rendering the pages on the print device.
abstract void
setPrintable(Printable printable, PageFormat page_format)
Sets the Printable and the page format for the pages to be printed.
abstract PageFormat
validatePage(PageFormat page_format)
Makes any alterations to the specified PageFormat necessary to make it work with the current printer.

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

PrinterJob

public PrinterJob()
Initializes a new instance of PrinterJob.

Method Details

cancel

public abstract void cancel()
Cancels an in progress print job.

defaultPage

public PageFormat defaultPage()
Returns an instance of the default page which will have the default paper and orientation.
Returns:
A default instance of PageFormat.

defaultPage

public abstract PageFormat defaultPage(PageFormat page_format)
Clones the specified PageFormat object then alters the clone so that it represents the default page format.
Parameters:
page_format - The PageFormat to clone.
Returns:
A new default page format.

getCopies

public abstract int getCopies()
Returns the number of copies to be printed.
Returns:
The number of copies to be printed.

getJobName

public abstract String getJobName()
Returns the name of the print job.
Returns:
The name of the print job.

getPrintService

public PrintService getPrintService()
Return the printer for this job. If print services aren't supported by the subclass, returns null.
Returns:
The associated PrintService.
Since:
1.4

getPrinterJob

public static PrinterJob getPrinterJob()
Creates a new print job.
Returns:
A PrinterJob object for the newly created print job.

getUserName

public abstract String getUserName()
Returns the printing user name.
Returns:
The printing username.

isCancelled

public abstract boolean isCancelled()
Tests whether or not this job has been cancelled.
Returns:
true if this job has been cancelled, false otherwise.

lookupPrintServices

public static PrintService[] lookupPrintServices()
Find and return 2D image print services. This is the same as calling PrintServiceLookup.lookupPrintServices() with Pageable service-specified DocFlavor.
Returns:
Array of PrintService objects, could be empty.
Since:
1.4

lookupStreamPrintServices

public static StreamPrintServiceFactory[] lookupStreamPrintServices(String mimeType)
Find and return 2D image stream print services. This is the same as calling StreamPrintServiceFactory.lookupStreamPrintServices() with Pageable service-specified DocFlavor.
Parameters:
mimeType - The output format mime type, or null for any type.
Returns:
Array of stream print services, could be empty.
Since:
1.4

pageDialog

public abstract PageFormat pageDialog(PageFormat page_format)
            throws HeadlessException
Displays a dialog box to the user which allows the page format attributes to be modified.
Parameters:
page_format - The PageFormat object to modify.
Returns:
The modified PageFormat.

pageDialog

public PageFormat pageDialog(PrintRequestAttributeSet attributes)
            throws HeadlessException
Since:
1.4

print

public abstract void print()
            throws PrinterException
Prints the pages.

print

public void print(PrintRequestAttributeSet attributes)
            throws PrinterException
Prints the page with given attributes.

printDialog

public abstract boolean printDialog()
            throws HeadlessException
Displays a dialog box to the user which allows the print job attributes to be modified.
Returns:
false if the user cancels the dialog box, true otherwise.

printDialog

public boolean printDialog(PrintRequestAttributeSet attributes)
            throws HeadlessException
Displays a dialog box to the user which allows the print job attributes to be modified.
Returns:
false if the user cancels the dialog box, true otherwise.

setCopies

public abstract void setCopies(int copies)
Sets the number of copies to be printed.
Parameters:
copies - The number of copies to be printed.

setJobName

public abstract void setJobName(String job_name)
Sets the name of the print job.
Parameters:
job_name - The name of the print job.

setPageable

public abstract void setPageable(Pageable pageable)
This sets the pages that are to be printed.
Parameters:
pageable - The pages to be printed, which may not be null.

setPrintService

public void setPrintService(PrintService service)
            throws PrinterException
Change the printer for this print job to service. Subclasses that support setting the print service override this method. Throws PrinterException when the class doesn't support setting the printer, the service doesn't support Pageable or Printable interfaces for 2D print output.
Parameters:
service - The new printer to use.
Throws:
PrinterException - if service is not valid.

setPrintable

public abstract void setPrintable(Printable printable)
Sets this specified Printable as the one to use for rendering the pages on the print device.
Parameters:
printable - The Printable for the print job.

setPrintable

public abstract void setPrintable(Printable printable,
                                  PageFormat page_format)
Sets the Printable and the page format for the pages to be printed.
Parameters:
printable - The Printable for the print job.
page_format - The PageFormat for the print job.

validatePage

public abstract PageFormat validatePage(PageFormat page_format)
Makes any alterations to the specified PageFormat necessary to make it work with the current printer. The alterations are made to a clone of the input object, which is then returned.
Parameters:
page_format - The PageFormat to validate.
Returns:
The validated PageFormat.

PrinterJob.java -- This job is the printer control class Copyright (C) 1999, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.