NAME

PDF::API2::Page - Methods to interact with individual pages

METHODS

$page = PDF::API2::Page->new $pdf, $parent, $index

Returns a page object (called from $pdf->page).

$page = PDF::API2::Page->coerce $pdf, $pdfpage

Returns a page object converted from $pdfpage (called from $pdf->openpage).

$page->update

Marks a page to be updated (by $pdf->update).

($llx, $lly, $urx, $ury) = $page->mediabox()
$page->mediabox($w, $h)
$page->mediabox($llx, $lly, $urx, $ury)
$page->mediabox($alias)

Get or set the mediabox. This method supports the following aliases: '4A0', '2A0', 'A0', 'A1', 'A2', 'A3', 'A4', 'A5', 'A6', '4B0', '2B0', 'B0', 'B1', 'B2', 'B3', 'B4', 'B5', 'B6', 'LETTER', 'BROADSHEET', 'LEDGER', 'TABLOID', 'LEGAL', 'EXECUTIVE', and '36X36'.

($llx, $lly, $urx, $ury) = $page->cropbox()
$page->cropbox($w, $h)
$page->cropbox($llx, $lly, $urx, $ury)
$page->cropbox($alias)

Get or set the cropbox. This method supports the same aliases as mediabox.

The cropbox defaults to the mediabox.

($llx, $lly, $urx, $ury) = $page->bleedbox()
$page->bleedbox($w, $h)
$page->bleedbox($llx, $lly, $urx, $ury)
$page->bleedbox($alias)

Get or set the bleedbox. This method supports the same aliases as mediabox.

The bleedbox defaults to the cropbox.

($llx, $lly, $urx, $ury) = $page->trimbox()
$page->trimbox($w, $h)
$page->trimbox($llx, $lly, $urx, $ury)

Get or set the trimbox. This method supports the same aliases as mediabox.

The trimbox defaults to the cropbox.

($llx, $lly, $urx, $ury) = $page->artbox()
$page->artbox($w, $h)
$page->artbox($llx, $lly, $urx, $ury)
$page->artbox($alias)

Get or set the artbox. This method supports the same aliases as mediabox.

The rtbox defaults to the cropbox.

$page->rotate $deg

Rotates the page by the given degrees, which must be a multiple of 90.

(This allows you to auto-rotate to landscape without changing the mediabox!)

$gfx = $page->gfx $prepend

Returns a graphics content object. If $prepend is true the content will be prepended to the page description.

$txt = $page->text $prepend

Returns a text content object. If $prepend is true the content will be prepended to the page description.

$ant = $page->annotation

Returns a new annotation object.

$page->resource $type, $key, $obj

Adds a resource to the page-inheritance tree.

Example:

$co->resource('Font',$fontkey,$fontobj);
$co->resource('XObject',$imagekey,$imageobj);
$co->resource('Shading',$shadekey,$shadeobj);
$co->resource('ColorSpace',$spacekey,$speceobj);

Note: You only have to add the required resources, if they are NOT handled by the *font*, *image*, *shade* or *space* methods.