- java.lang.Object
-
- java.awt.print.Book
-
- All Implemented Interfaces:
Pageable
public class Book extends Object implements Pageable
TheBook
class provides a representation of a document in which pages may have different page formats and page painters. This class uses thePageable
interface to interact with aPrinterJob
.- See Also:
Pageable
,PrinterJob
-
-
Field Summary
-
Fields declared in interface java.awt.print.Pageable
UNKNOWN_NUMBER_OF_PAGES
-
-
Constructor Summary
Constructors Constructor Description Book()
Creates a new, emptyBook
.
-
Method Summary
Modifier and Type Method Description void
append(Printable painter, PageFormat page)
Appends a single page to the end of thisBook
.void
append(Printable painter, PageFormat page, int numPages)
AppendsnumPages
pages to the end of thisBook
.int
getNumberOfPages()
Returns the number of pages in thisBook
.PageFormat
getPageFormat(int pageIndex)
Returns thePageFormat
of the page specified bypageIndex
.Printable
getPrintable(int pageIndex)
Returns thePrintable
instance responsible for rendering the page specified bypageIndex
.void
setPage(int pageIndex, Printable painter, PageFormat page)
Sets thePageFormat
and thePainter
for a specified page number.
-
-
-
Method Detail
-
getNumberOfPages
public int getNumberOfPages()
Returns the number of pages in thisBook
.- Specified by:
getNumberOfPages
in interfacePageable
- Returns:
- the number of pages this
Book
contains.
-
getPageFormat
public PageFormat getPageFormat(int pageIndex) throws IndexOutOfBoundsException
Returns thePageFormat
of the page specified bypageIndex
.- Specified by:
getPageFormat
in interfacePageable
- Parameters:
pageIndex
- the zero based index of the page whosePageFormat
is being requested- Returns:
- the
PageFormat
describing the size and orientation of the page. - Throws:
IndexOutOfBoundsException
- if thePageable
does not contain the requested page
-
getPrintable
public Printable getPrintable(int pageIndex) throws IndexOutOfBoundsException
Returns thePrintable
instance responsible for rendering the page specified bypageIndex
.- Specified by:
getPrintable
in interfacePageable
- Parameters:
pageIndex
- the zero based index of the page whosePrintable
is being requested- Returns:
- the
Printable
that renders the page. - Throws:
IndexOutOfBoundsException
- if thePageable
does not contain the requested page
-
setPage
public void setPage(int pageIndex, Printable painter, PageFormat page) throws IndexOutOfBoundsException
Sets thePageFormat
and thePainter
for a specified page number.- Parameters:
pageIndex
- the zero based index of the page whose painter and format is alteredpainter
- thePrintable
instance that renders the pagepage
- the size and orientation of the page- Throws:
IndexOutOfBoundsException
- if the specified page is not already in thisBook
NullPointerException
- if thepainter
orpage
argument isnull
-
append
public void append(Printable painter, PageFormat page)
Appends a single page to the end of thisBook
.- Parameters:
painter
- thePrintable
instance that renders the pagepage
- the size and orientation of the page- Throws:
NullPointerException
- If thepainter
orpage
argument isnull
-
append
public void append(Printable painter, PageFormat page, int numPages)
AppendsnumPages
pages to the end of thisBook
. Each of the pages is associated withpage
.- Parameters:
painter
- thePrintable
instance that renders the pagepage
- the size and orientation of the pagenumPages
- the number of pages to be added to the thisBook
.- Throws:
NullPointerException
- If thepainter
orpage
argument isnull
-
-