PoDoFo  0.9.4
Public Member Functions | Static Public Member Functions | List of all members
PoDoFo::PdfPage Class Reference

#include <PdfPage.h>

Inheritance diagram for PoDoFo::PdfPage:
PoDoFo::PdfElement PoDoFo::PdfCanvas

Public Member Functions

 PdfPage (const PdfRect &rSize, PdfDocument *pParent)
 
 PdfPage (const PdfRect &rSize, PdfVecObjects *pParent)
 
 PdfPage (PdfObject *pObject, const std::deque< PdfObject * > &listOfParents)
 
virtual const PdfRect GetPageSize () const
 
bool SetPageWidth (int newWidth)
 
bool SetPageHeight (int newHeight)
 
void SetTrimBox (const PdfRect &rSize)
 
unsigned int GetPageNumber () const
 
virtual PdfObjectGetContents () const
 
virtual PdfObjectGetContentsForAppending () const
 
virtual PdfObjectGetResources () const
 
virtual const PdfRect GetMediaBox () const
 
virtual const PdfRect GetCropBox () const
 
virtual const PdfRect GetTrimBox () const
 
virtual const PdfRect GetBleedBox () const
 
virtual const PdfRect GetArtBox () const
 
virtual int GetRotation () const
 
virtual void SetRotation (int nRotation)
 
virtual int GetNumAnnots () const
 
PdfAnnotationCreateAnnotation (EPdfAnnotation eType, const PdfRect &rRect)
 
PdfAnnotationGetAnnotation (int index)
 
void DeleteAnnotation (int index)
 
void DeleteAnnotation (const PdfReference &ref)
 
int GetNumFields () const
 
PdfField GetField (int index)
 
const PdfField GetField (int index) const
 
PdfObjectGetFromResources (const PdfName &rType, const PdfName &rKey)
 
const PdfObjectGetInheritedKey (const PdfName &rName) const
 
- Public Member Functions inherited from PoDoFo::PdfElement
PdfObjectGetObject ()
 
const PdfObjectGetObject () const
 
- Public Member Functions inherited from PoDoFo::PdfCanvas
virtual ~PdfCanvas ()
 
void AddColorResource (const PdfColor &rColor)
 
void AddResource (const PdfName &rIdentifier, const PdfReference &rRef, const PdfName &rName)
 

Static Public Member Functions

static PdfRect CreateStandardPageSize (const EPdfPageSize ePageSize, bool bLandscape=false)
 
- Static Public Member Functions inherited from PoDoFo::PdfCanvas
static const PdfArrayGetProcSet ()
 

Additional Inherited Members

- Protected Member Functions inherited from PoDoFo::PdfElement
 PdfElement (const char *pszType, PdfVecObjects *pParent)
 
 PdfElement (const char *pszType, PdfDocument *pParent)
 
 PdfElement (const char *pszType, PdfObject *pObject)
 
 PdfElement (EPdfDataType eExpectedDataType, PdfObject *pObject)
 
const char * TypeNameForIndex (int i, const char **ppTypes, long lLen) const
 
int TypeNameToIndex (const char *pszType, const char **ppTypes, long lLen, int nUnknownValue) const
 
PdfObjectCreateObject (const char *pszType=NULL)
 
PdfObjectGetNonConstObject () const
 

Detailed Description

PdfPage is one page in the pdf document. It is possible to draw on a page using a PdfPainter object. Every document needs at least one page.

Constructor & Destructor Documentation

PoDoFo::PdfPage::PdfPage ( const PdfRect rSize,
PdfDocument pParent 
)

Create a new PdfPage object.

Parameters
rSizea PdfRect specifying the size of the page (i.e the /MediaBox key) in PDF units
pParentadd the page to this parent
PoDoFo::PdfPage::PdfPage ( const PdfRect rSize,
PdfVecObjects pParent 
)

Create a new PdfPage object.

Parameters
rSizea PdfRect specifying the size of the page (i.e the /MediaBox key) in PDF units
pParentadd the page to this parent
PoDoFo::PdfPage::PdfPage ( PdfObject pObject,
const std::deque< PdfObject * > &  listOfParents 
)

Create a PdfPage based on an existing PdfObject

Parameters
pObjectan existing PdfObject
listOfParentsa list of PdfObjects that are parents of this page and can be queried for inherited attributes. The last object in the list is the most direct parent of this page.

Member Function Documentation

PdfAnnotation * PoDoFo::PdfPage::CreateAnnotation ( EPdfAnnotation  eType,
const PdfRect rRect 
)

Create a new annotation to this page.

Parameters
eTypethe type of the annotation
rRectrectangle of the annotation on the page
Returns
the annotation object which is owned by the PdfPage
PdfRect PoDoFo::PdfPage::CreateStandardPageSize ( const EPdfPageSize  ePageSize,
bool  bLandscape = false 
)
static

Creates a PdfRect with the page size as values which is needed to create a PdfPage object from an enum which are defined for a few standard page sizes.

Parameters
ePageSizethe page size you want
bLandscapecreate a landscape pagesize instead of portrait (by exchanging width and height)
Returns
a PdfRect object which can be passed to the PdfPage constructor
void PoDoFo::PdfPage::DeleteAnnotation ( int  index)

Delete the annotation with index index from this page.

Parameters
indexthe index of the annotation to delete
See also
GetNumAnnots
void PoDoFo::PdfPage::DeleteAnnotation ( const PdfReference ref)

Delete the annotation object with reference ref from this page.

Parameters
refthe reference of an annotation object of this page.
See also
GetNumAnnots
PdfAnnotation * PoDoFo::PdfPage::GetAnnotation ( int  index)

Get the annotation with index index of the current page.

Parameters
indexthe index of the annotation to retrieve
Returns
a annotation object. The annotation object is owned by the PdfPage.
See also
GetNumAnnots
virtual const PdfRect PoDoFo::PdfPage::GetArtBox ( ) const
inlinevirtual

Get the current ArtBox in PDF units.

Returns
PdfRect the page box
virtual const PdfRect PoDoFo::PdfPage::GetBleedBox ( ) const
inlinevirtual

Get the current BleedBox (extra area for printing purposes) in PDF units.

Returns
PdfRect the page box
PdfObject * PoDoFo::PdfPage::GetContents ( ) const
virtual

Get access to the contents object of this page. If you want to draw onto the page, you have to add drawing commands to the stream of the Contents object.

Returns
a contents object

Implements PoDoFo::PdfCanvas.

PdfObject * PoDoFo::PdfPage::GetContentsForAppending ( ) const
virtual

Get access an object that you can use to ADD drawing to. If you want to draw onto the page, you have to add drawing commands to the stream of the Contents object.

Returns
a contents object

Implements PoDoFo::PdfCanvas.

virtual const PdfRect PoDoFo::PdfPage::GetCropBox ( ) const
inlinevirtual

Get the current CropBox (visible page size) in PDF units.

Returns
PdfRect the page box
PdfField PoDoFo::PdfPage::GetField ( int  index)

Get a PdfField with a certain index.

Parameters
indexof the PdfField (must be smaller than GetNumFields() )
See also
GetNumFields
Returns
a PdfField
const PdfField PoDoFo::PdfPage::GetField ( int  index) const

Get a PdfField with a certain index.

Parameters
indexof the PdfField (must be smaller than GetNumFields() )
See also
GetNumFields
Returns
a constP dfField
PdfObject * PoDoFo::PdfPage::GetFromResources ( const PdfName rType,
const PdfName rKey 
)

Get an element from the pages resources dictionary, using a type (category) and a key.

Parameters
rTypethe type of resource to fetch (e.g. /Font, or /XObject)
rKeythe key of the resource
Returns
the object of the resource or NULL if it was not found
const PdfObject * PoDoFo::PdfPage::GetInheritedKey ( const PdfName rName) const
inline

Method for getting a value that can be inherited Possible names that can be inherited according to the PDF specification are: Resources, MediaBox, CropBox and Rotate

Returns
PdfObject - the result of the key fetching or NULL
virtual const PdfRect PoDoFo::PdfPage::GetMediaBox ( ) const
inlinevirtual

Get the current MediaBox (physical page size) in PDF units.

Returns
PdfRect the page box
int PoDoFo::PdfPage::GetNumAnnots ( ) const
virtual

Get the number of annotations associated with this page \ returns int number of annotations

int PoDoFo::PdfPage::GetNumFields ( ) const
Returns
the number of PdfFields on this page.
unsigned int PoDoFo::PdfPage::GetPageNumber ( ) const

Page number inside of the document. The first page has the number 1, the last page has the number PdfPagesTree:GetTotalNumberOfPages()

Returns
the number of the page inside of the document
See also
PdfPagesTree:GetTotalNumberOfPages()
const PdfRect PoDoFo::PdfPage::GetPageSize ( ) const
inlinevirtual

Get the current page size in PDF Units

Returns
a PdfRect containing the page size available for drawing

Implements PoDoFo::PdfCanvas.

PdfObject * PoDoFo::PdfPage::GetResources ( ) const
inlinevirtual

Get access to the resources object of this page. This is most likely an internal object.

Returns
a resources object

Implements PoDoFo::PdfCanvas.

int PoDoFo::PdfPage::GetRotation ( ) const
virtual

Get the current page rotation (if any).

Returns
int 0, 90, 180 or 270
virtual const PdfRect PoDoFo::PdfPage::GetTrimBox ( ) const
inlinevirtual

Get the current TrimBox (cut area) in PDF units.

Returns
PdfRect the page box
bool PoDoFo::PdfPage::SetPageHeight ( int  newHeight)

Set the current page height in PDF Units

Returns
true if successfull, false otherwise
bool PoDoFo::PdfPage::SetPageWidth ( int  newWidth)

Set the current page width in PDF Units

Returns
true if successfull, false otherwise
void PoDoFo::PdfPage::SetRotation ( int  nRotation)
virtual

Set the current page rotation.

Parameters
iRotationRotation to set to the page. Valid value are 0, 90, 180, 270.
void PoDoFo::PdfPage::SetTrimBox ( const PdfRect rSize)

Set the trimbox in PDF Units

Parameters
rSizea PdfRect specifying the trimbox of the page (i.e the /TrimBox key) in PDF units