This documentation differs from the official API. Jadeite adds extra features to the API including: variable font sizes, constructions examples, placeholders for classes and methods, and auto-generated “See Also” links. Additionally it is missing some items found in standard Javadoc documentation, including: generics type information, “Deprecated” tags and comments, “See Also” links, along with other minor differences. Please send any questions or feedback to bam@cs.cmu.edu.


java.awt.print
interface Printable


public interface Printable

The Printable interface is implemented by the print methods of the current page painter, which is called by the printing system to render a page. When building a {@link Pageable}, pairs of {@link PageFormat} instances and instances that implement this interface are used to describe each page. The instance implementing Printable is called to print the page's graphics.

A Printable(..) may be set on a PrinterJob. When the client subsequently initiates printing by calling PrinterJob.print(..) control

is handed to the printing system until all pages have been printed. It does this by calling Printable.print(..) until all pages in the document have been printed. In using the Printable interface the printing commits to image the contents of a page whenever requested by the printing system.

The parameters to Printable.print(..) include a PageFormat which describes the printable area of the page, needed for calculating the contents that will fit the page, and the page index, which specifies the zero-based print stream index of the requested page.

For correct printing behaviour, the following points should be observed:


Field Summary
static int NO_SUCH_PAGE
          Returned from print to signify that the pageIndex is too large and that the requested page does not exist.
static int PAGE_EXISTS
          Returned from java.awt.print.Printable.print to signify that the requested page was rendered.
 
Method Summary
 int
print(Graphics graphics, PageFormat pageFormat, int pageIndex)

          Prints the page at the specified index into the specified java.awt.Graphics context in the specified format.
 

Field Detail

NO_SUCH_PAGE

public static final int NO_SUCH_PAGE
Returned from print to signify that the pageIndex is too large and that the requested page does not exist.

PAGE_EXISTS

public static final int PAGE_EXISTS
Returned from {@link #print(Graphics, PageFormat, int)} to signify that the requested page was rendered.
Method Detail

print

public int print(Graphics graphics,
                 PageFormat pageFormat,
                 int pageIndex)
          throws PrinterException
Prints the page at the specified index into the specified {@link Graphics} context in the specified format. A PrinterJob calls the Printable interface to request that a page be rendered into the context specified by graphics. The format of the page to be drawn is specified by pageFormat. The zero based index of the requested page is specified by pageIndex. If the requested page does not exist then this method returns NO_SUCH_PAGE; otherwise PAGE_EXISTS is returned. The Graphics class or subclass implements the {@link PrinterGraphics} interface to provide additional information. If the Printable object aborts the print job then it throws a {@link PrinterException}.

Parameters:
graphics - the context into which the page is drawn
pageFormat - the size and orientation of the page being drawn
pageIndex - the zero based index of the page to be drawn
Returns:
PAGE_EXISTS if the page is rendered successfully or NO_SUCH_PAGE if pageIndex specifies a non-existent page.
Throws:
PrinterException - thrown when the print job is terminated.


This documentation differs from the official API. Jadeite adds extra features to the API including: variable font sizes, constructions examples, placeholders for classes and methods, and auto-generated “See Also” links. Additionally it is missing some items found in standard Javadoc documentation, including: generics type information, “Deprecated” tags and comments, “See Also” links, along with other minor differences. Please send any questions or feedback to bam@cs.cmu.edu.
This page displays the Jadeite version of the documention, which is derived from the offical documentation that contains this copyright notice:
Copyright 2008 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.
The official Sun™ documentation can be found here at http://java.sun.com/javase/6/docs/api/.