org.pdfbox.pdmodel

Class PDPage

Implemented Interfaces:
COSObjectable, Printable

public class PDPage
extends java.lang.Object
implements COSObjectable, Printable

This represents a single page in a PDF document.
Version:
$Revision: 1.28 $
Author:
Ben Litchfield

Field Summary

static PDRectangle
PAGE_SIZE_LETTER
A page size of LETTER or 8.5x11.

Constructor Summary

PDPage()
Creates a new instance of PDPage with a size of 8.5x11.
PDPage(COSDictionary pageDic)
Creates a new instance of PDPage.

Method Summary

BufferedImage
convertToImage()
Convert this page to an output image.
boolean
equals(Object other)
PDRectangle
findCropBox()
This will find the CropBox for this page by looking up the hierarchy until it finds them.
PDRectangle
findMediaBox()
This will find the MediaBox for this page by looking up the hierarchy until it finds them.
PDResources
findResources()
This will find the resources for this page by looking up the hierarchy until it finds them.
int
findRotation()
This will find the rotation for this page by looking up the hierarchy until it finds them.
PDPageAdditionalActions
getActions()
Get the page actions.
List
getAnnotations()
This will return a list of the Annotations for this page.
PDRectangle
getArtBox()
A rectangle, expressed in default user space units, defining the extent of the page's meaningful content (including potential white space) as intended by the page's creator The default isthe CropBox.
PDRectangle
getBleedBox()
A rectangle, expressed in default user space units, defining the region to which the contents of the page should be clipped when output in a production environment.
COSDictionary
getCOSDictionary()
This will get the underlying dictionary that this class acts on.
COSBase
getCOSObject()
Convert this standard java object to a COS object.
PDStream
getContents()
This will get the contents of the PDF Page, in the case that the contents of the page is an array then then the entire array of streams will be be wrapped and appear as a single stream.
PDRectangle
getCropBox()
A rectangle, expressed in default user space units, defining the visible region of default user space.
Calendar
getLastModified()
This will get the date that the content stream was last modified.
PDRectangle
getMediaBox()
A rectangle, expressed in default user space units, defining the boundaries of the physical medium on which the page is intended to be displayed or printed This will get the MediaBox at this page and not look up the hierarchy.
PDMetadata
getMetadata()
Get the metadata that is part of the document catalog.
PDPageNode
getParent()
This is the parent page node.
PDResources
getResources()
This will get the resources at this page and not look up the hierarchy.
Integer
getRotation()
A value representing the rotation.
List
getThreadBeads()
This will get a list of PDThreadBead objects, which are article threads in the document.
PDRectangle
getTrimBox()
A rectangle, expressed in default user space units, defining the intended dimensions of the finished page after trimming.
int
hashCode()
int
print(Graphics graphics, PageFormat pageFormat, int pageIndex)
void
setActions(PDPageAdditionalActions actions)
Set the page actions.
void
setAnnotations(List annots)
This will set the list of annotations.
void
setArtBox(PDRectangle artBox)
This will set the ArtBox for this page.
void
setBleedBox(PDRectangle bleedBox)
This will set the BleedBox for this page.
void
setContents(PDStream contents)
This will set the contents of this page.
void
setCropBox(PDRectangle cropBox)
This will set the CropBox for this page.
void
setMediaBox(PDRectangle mediaBox)
This will set the mediaBox for this page.
void
setMetadata(PDMetadata meta)
Set the metadata for this object.
void
setParent(PDPageNode parent)
This will set the parent of this page.
void
setResources(PDResources resources)
This will set the resources for this page.
void
setRotation(int rotation)
This will set the rotation for this page.
void
setThreadBeads(List beads)
This will set the list of thread beads.
void
setTrimBox(PDRectangle trimBox)
This will set the TrimBox for this page.
void
updateLastModified()
This will update the last modified time for the page object.

Field Details

PAGE_SIZE_LETTER

public static final PDRectangle PAGE_SIZE_LETTER
A page size of LETTER or 8.5x11.

Constructor Details

PDPage

public PDPage()
Creates a new instance of PDPage with a size of 8.5x11.

PDPage

public PDPage(COSDictionary pageDic)
Creates a new instance of PDPage.
Parameters:
pageDic - The existing page dictionary.

Method Details

convertToImage

public BufferedImage convertToImage()
            throws IOException
Convert this page to an output image.
Returns:
A graphical representation of this page.

equals

public boolean equals(Object other)

findCropBox

public PDRectangle findCropBox()
This will find the CropBox for this page by looking up the hierarchy until it finds them.
Returns:
The CropBox at this level in the hierarchy.

findMediaBox

public PDRectangle findMediaBox()
This will find the MediaBox for this page by looking up the hierarchy until it finds them.
Returns:
The MediaBox at this level in the hierarchy.

findResources

public PDResources findResources()
This will find the resources for this page by looking up the hierarchy until it finds them.
Returns:
The resources at this level in the hierarchy.

findRotation

public int findRotation()
This will find the rotation for this page by looking up the hierarchy until it finds them.
Returns:
The rotation at this level in the hierarchy.

getActions

public PDPageAdditionalActions getActions()
Get the page actions.
Returns:
The Actions for this Page

getAnnotations

public List getAnnotations()
            throws IOException
This will return a list of the Annotations for this page.
Returns:
List of the PDAnnotation objects.

getArtBox

public PDRectangle getArtBox()
A rectangle, expressed in default user space units, defining the extent of the page's meaningful content (including potential white space) as intended by the page's creator The default isthe CropBox.
Returns:
The ArtBox attribute.

getBleedBox

public PDRectangle getBleedBox()
A rectangle, expressed in default user space units, defining the region to which the contents of the page should be clipped when output in a production environment. The default is the CropBox.
Returns:
The BleedBox attribute.

getCOSDictionary

public COSDictionary getCOSDictionary()
This will get the underlying dictionary that this class acts on.
Returns:
The underlying dictionary for this class.

getCOSObject

public COSBase getCOSObject()
Convert this standard java object to a COS object.
Specified by:
getCOSObject in interface COSObjectable
Returns:
The cos object that matches this Java object.

getContents

public PDStream getContents()
            throws IOException
This will get the contents of the PDF Page, in the case that the contents of the page is an array then then the entire array of streams will be be wrapped and appear as a single stream.
Returns:
The page content stream.

getCropBox

public PDRectangle getCropBox()
A rectangle, expressed in default user space units, defining the visible region of default user space. When the page is displayed or printed, its contents are to be clipped (cropped) to this rectangle and then imposed on the output medium in some implementationdefined manner This will get the CropBox at this page and not look up the hierarchy. This attribute is inheritable, and findCropBox() should probably used. This will return null if no CropBox is available at this level.
Returns:
The CropBox at this level in the hierarchy.

getLastModified

public Calendar getLastModified()
            throws IOException
This will get the date that the content stream was last modified. This may return null.
Returns:
The date the content stream was last modified.

getMediaBox

public PDRectangle getMediaBox()
A rectangle, expressed in default user space units, defining the boundaries of the physical medium on which the page is intended to be displayed or printed This will get the MediaBox at this page and not look up the hierarchy. This attribute is inheritable, and findMediaBox() should probably used. This will return null if no MediaBox are available at this level.
Returns:
The MediaBox at this level in the hierarchy.

getMetadata

public PDMetadata getMetadata()
Get the metadata that is part of the document catalog. This will return null if there is no meta data for this object.
Returns:
The metadata for this object.

getParent

public PDPageNode getParent()
This is the parent page node. The parent is a required element of the page. This will be null until this page is added to the document.
Returns:
The parent to this page.

getResources

public PDResources getResources()
This will get the resources at this page and not look up the hierarchy. This attribute is inheritable, and findResources() should probably used. This will return null if no resources are available at this level.
Returns:
The resources at this level in the hierarchy.

getRotation

public Integer getRotation()
A value representing the rotation. This will be null if not set at this level The number of degrees by which the page should be rotated clockwise when displayed or printed. The value must be a multiple of 90. This will get the rotation at this page and not look up the hierarchy. This attribute is inheritable, and findRotation() should probably used. This will return null if no rotation is available at this level.
Returns:
The rotation at this level in the hierarchy.

getThreadBeads

public List getThreadBeads()
This will get a list of PDThreadBead objects, which are article threads in the document. This will return an empty list of there are no thread beads.
Returns:
A list of article threads on this page.

getTrimBox

public PDRectangle getTrimBox()
A rectangle, expressed in default user space units, defining the intended dimensions of the finished page after trimming. The default is the CropBox.
Returns:
The TrimBox attribute.

hashCode

public int hashCode()

print

public int print(Graphics graphics,
                 PageFormat pageFormat,
                 int pageIndex)
            throws PrinterException

setActions

public void setActions(PDPageAdditionalActions actions)
Set the page actions.
Parameters:
actions - The actions for the page.

setAnnotations

public void setAnnotations(List annots)
This will set the list of annotations.
Parameters:
annots - The new list of annotations.

setArtBox

public void setArtBox(PDRectangle artBox)
This will set the ArtBox for this page.
Parameters:
artBox - The new ArtBox for this page.

setBleedBox

public void setBleedBox(PDRectangle bleedBox)
This will set the BleedBox for this page.
Parameters:
bleedBox - The new BleedBox for this page.

setContents

public void setContents(PDStream contents)
This will set the contents of this page.
Parameters:
contents - The new contents of the page.

setCropBox

public void setCropBox(PDRectangle cropBox)
This will set the CropBox for this page.
Parameters:
cropBox - The new CropBox for this page.

setMediaBox

public void setMediaBox(PDRectangle mediaBox)
This will set the mediaBox for this page.
Parameters:
mediaBox - The new mediaBox for this page.

setMetadata

public void setMetadata(PDMetadata meta)
Set the metadata for this object. This can be null.
Parameters:
meta - The meta data for this object.

setParent

public void setParent(PDPageNode parent)
This will set the parent of this page.
Parameters:
parent - The parent to this page node.

setResources

public void setResources(PDResources resources)
This will set the resources for this page.
Parameters:
resources - The new resources for this page.

setRotation

public void setRotation(int rotation)
This will set the rotation for this page.
Parameters:
rotation - The new rotation for this page.

setThreadBeads

public void setThreadBeads(List beads)
This will set the list of thread beads.
Parameters:
beads - A list of PDThreadBead objects or null.

setTrimBox

public void setTrimBox(PDRectangle trimBox)
This will set the TrimBox for this page.
Parameters:
trimBox - The new TrimBox for this page.

updateLastModified

public void updateLastModified()
This will update the last modified time for the page object.