Class CPDF_Adapter

Description

Implements interfaces:

PDF rendering interface

CPDF_Adapter provides a simple stateless interface to the stateful one provided by the Cpdf class.

Unless otherwise mentioned, all dimensions are in points (1/72 in). The coordinate origin is in the top left corner, and y values increase downwards.

See http://www.ros.co.nz/pdf/ for more complete documentation on the underlying Cpdf class.

Located in /include/cpdf_adapter.cls.php (line 60)


	
			
Variable Summary
array; $PAPER_SIZES
Method Summary
CPDF_Adapter __construct ([string $paper = "letter"], [string $orientation = "portrait"])
void add_object (int $object, [string $where = 'all'])
void circle (mixed $x, mixed $y, mixed $r1, mixed $color, [mixed $width = null], [mixed $style = null], [mixed $fill = false], [mixed $blend = "Normal"], [mixed $opacity = 1.0])
void close_object ()
void filled_rectangle (mixed $x1, mixed $y1, mixed $w, mixed $h, mixed $color, [mixed $blend = "Normal"], [mixed $opacity = 1.0])
Cpdf get_cpdf ()
void get_font_height (mixed $font, mixed $size)
float get_height ()
string get_messages ()
void get_text_width (mixed $text, mixed $font, mixed $size, mixed $spacing)
float get_width ()
void image (mixed $img_url, mixed $img_type, mixed $x, mixed $y, mixed $w, mixed $h)
void line (mixed $x1, mixed $y1, mixed $x2, mixed $y2, mixed $color, mixed $width, [mixed $style = array()], [mixed $blend = "Normal"], [mixed $opacity = 1.0])
void new_page ()
int open_object ()
string output ()
void page_text (float $x, float $y, string $text, string $font, float $size, [array $color = array(0,0,0)], float $adjust, float $angle, [mixed $blend = "Normal"], [mixed $opacity = 1.0])
void polygon (mixed $points, mixed $color, [mixed $width = null], [mixed $style = array()], [mixed $fill = false], [mixed $blend = "Normal"], [mixed $opacity = 1.0])
void rectangle (mixed $x1, mixed $y1, mixed $w, mixed $h, mixed $color, mixed $width, [mixed $style = array()], [mixed $blend = "Normal"], [mixed $opacity = 1.0])
void reopen_object (int $object)
void set_page_count (int $count)
void set_page_number (int $num)
void stop_object (int $object)
void stream (string $filename, [array $options = null])
void text (mixed $x, mixed $y, mixed $text, mixed $font, mixed $size, [mixed $color = array(0,0,0)], mixed $adjust, mixed $angle, [mixed $blend = "Normal"], [mixed $opacity = 1.0])
float y (float $y)
void _set_fill_color (array $color)
void _set_fill_transparency (string $mode, float $opacity)
void _set_line_style (float $width, string $cap, string $join, array $dash)
void _set_line_transparency (string $mode, float $opacity)
void _set_stroke_color (array $color)
Variables
array; $PAPER_SIZES = array("4a0" => array(0,0,4767.87,6740.79),"2a0"=>array(0,0,3370.39,4767.87),"a0"=>array(0,0,2383.94,3370.39),"a1"=>array(0,0,1683.78,2383.94),"a2"=>array(0,0,1190.55,1683.78),"a3"=>array(0,0,841.89,1190.55),"a4"=>array(0,0,595.28,841.89),"a5"=>array(0,0,419.53,595.28),"a6"=>array(0,0,297.64,419.53),"a7"=>array(0,0,209.76,297.64),"a8"=>array(0,0,147.40,209.76),"a9"=>array(0,0,104.88,147.40),"a10"=>array(0,0,73.70,104.88),"b0"=>array(0,0,2834.65,4008.19),"b1"=>array(0,0,2004.09,2834.65),"b2"=>array(0,0,1417.32,2004.09),"b3"=>array(0,0,1000.63,1417.32),"b4"=>array(0,0,708.66,1000.63),"b5"=>array(0,0,498.90,708.66),"b6"=>array(0,0,354.33,498.90),"b7"=>array(0,0,249.45,354.33),"b8"=>array(0,0,175.75,249.45),"b9"=>array(0,0,124.72,175.75),"b10"=>array(0,0,87.87,124.72),"c0"=>array(0,0,2599.37,3676.54),"c1"=>array(0,0,1836.85,2599.37),"c2"=>array(0,0,1298.27,1836.85),"c3"=>array(0,0,918.43,1298.27),"c4"=>array(0,0,649.13,918.43),"c5"=>array(0,0,459.21,649.13),"c6"=>array(0,0,323.15,459.21),"c7"=>array(0,0,229.61,323.15),"c8"=>array(0,0,161.57,229.61),"c9"=>array(0,0,113.39,161.57),"c10"=>array(0,0,79.37,113.39),"ra0"=>array(0,0,2437.80,3458.27),"ra1"=>array(0,0,1729.13,2437.80),"ra2"=>array(0,0,1218.90,1729.13),"ra3"=>array(0,0,864.57,1218.90),"ra4"=>array(0,0,609.45,864.57),"sra0"=>array(0,0,2551.18,3628.35),"sra1"=>array(0,0,1814.17,2551.18),"sra2"=>array(0,0,1275.59,1814.17),"sra3"=>array(0,0,907.09,1275.59),"sra4"=>array(0,0,637.80,907.09),"letter"=>array(0,0,612.00,792.00),"legal"=>array(0,0,612.00,1008.00),"ledger"=>array(0,0,1224.00,792.00),"tabloid"=>array(0,0,792.00,1224.00),"executive"=>array(0,0,521.86,756.00),"folio"=>array(0,0,612.00,936.00),"8.5x11"=>array(0,0,612.00,792.00),"8.5x14"=>array(0,0,612.00,1008.0),"11x17"=>array(0,0,792.00,1224.00)) (line 67)

Dimensions of paper sizes in points

  • static:
Methods
Constructor __construct (line 171)

Class constructor

CPDF_Adapter __construct ([string $paper = "letter"], [string $orientation = "portrait"])
  • string $paper: The size of paper to use in this PDF (CPDF_Adapter::$PAPER_SIZES)
  • string $orientation: The orienation of the document (either 'landscape' or 'portrait')
add_object (line 263)

Adds a specified 'object' to the document

$object int specifying an object created with CPDF_Adapter::open_object(). $where can be one of:

  • 'add' add to current page only
  • 'all' add to every page from the current one onwards
  • 'odd' add to all odd numbered pages from now on
  • 'even' add to all even numbered pages from now on
  • 'next' add the object to the next page only
  • 'nextodd' add to all odd numbered pages from the next one
  • 'nexteven' add to all even numbered pages from the next one

  • see: Cpdf::addObject()
void add_object (int $object, [string $where = 'all'])
  • int $object
  • string $where
circle (line 477)
void circle (mixed $x, mixed $y, mixed $r1, mixed $color, [mixed $width = null], [mixed $style = null], [mixed $fill = false], [mixed $blend = "Normal"], [mixed $opacity = 1.0])
close_object (line 240)

Closes the current 'object'

void close_object ()
filled_rectangle (line 444)
void filled_rectangle (mixed $x1, mixed $y1, mixed $w, mixed $h, mixed $color, [mixed $blend = "Normal"], [mixed $opacity = 1.0])
get_cpdf (line 202)

Returns the Cpdf instance

Cpdf get_cpdf ()
get_font_height (line 540)
void get_font_height (mixed $font, mixed $size)
get_height (line 306)

Returns the PDF's height in points

float get_height ()
get_messages (line 623)

Returns logging messages generated by the Cpdf class

string get_messages ()
get_page_count (line 318)

Returns the total number of pages in the document

int get_page_count ()
get_page_number (line 312)

Returns the current page number

int get_page_number ()
get_text_width (line 533)
void get_text_width (mixed $text, mixed $font, mixed $size, mixed $spacing)
get_width (line 300)

Returns the PDF's width in points

float get_width ()
image (line 495)
void image (mixed $img_url, mixed $img_type, mixed $x, mixed $y, mixed $w, mixed $h)
line (line 417)
void line (mixed $x1, mixed $y1, mixed $x2, mixed $y2, mixed $color, mixed $width, [mixed $style = array()], [mixed $blend = "Normal"], [mixed $opacity = 1.0])
new_page (line 578)
void new_page ()
open_object (line 218)

Opens a new 'object'

While an object is open, all drawing actions are recored in the object, as opposed to being drawn on the current page. Objects can be added later to a specific page or to several pages.

The return value is an integer ID for the new object.

int open_object ()
output (line 611)

Returns the PDF as a string

string output ()
page_text (line 562)

Writes text at the specified x and y coordinates on every page

The strings '{PAGE_NUM}' and '{PAGE_COUNT}' are automatically replaced with their current values.

See Style::munge_colour() for the format of the colour array.

void page_text (float $x, float $y, string $text, string $font, float $size, [array $color = array(0,0,0)], float $adjust, float $angle, [mixed $blend = "Normal"], [mixed $opacity = 1.0])
  • float $x
  • float $y
  • string $text: the text to write
  • string $font: the font file to use
  • float $size: the font size, in points
  • array $color
  • float $adjust: word spacing adjustment
  • float $angle: angle to write the text at, measured CW starting from the x-axis
polygon (line 456)
void polygon (mixed $points, mixed $color, [mixed $width = null], [mixed $style = array()], [mixed $fill = false], [mixed $blend = "Normal"], [mixed $opacity = 1.0])
rectangle (line 432)
void rectangle (mixed $x1, mixed $y1, mixed $w, mixed $h, mixed $color, mixed $width, [mixed $style = array()], [mixed $blend = "Normal"], [mixed $opacity = 1.0])
reopen_object (line 230)

Reopens an existing 'object'

void reopen_object (int $object)
  • int $object: the ID of a previously opened object
set_page_count (line 332)

Sets the page count

void set_page_count (int $count)
  • int $count
set_page_number (line 325)

Sets the current page number

void set_page_number (int $num)
  • int $num
stop_object (line 275)

Stops the specified 'object' from appearing in the document.

The object will stop being displayed on the page following the current one.

void stop_object (int $object)
  • int $object
stream (line 599)

Streams the PDF directly to the browser

void stream (string $filename, [array $options = null])
  • string $filename: the name of the PDF file
  • array $options: associative array, 'Attachment' => 0 or 1, 'compress' => 1 or 0
text (line 516)
void text (mixed $x, mixed $y, mixed $text, mixed $font, mixed $size, [mixed $color = array(0,0,0)], mixed $adjust, mixed $angle, [mixed $blend = "Normal"], [mixed $opacity = 1.0])
y (line 413)

Remaps y coords from 4th to 1st quadrant

  • access: protected
float y (float $y)
  • float $y
_set_fill_color (line 351)

Sets the fill colour

See Style::set_colour() for the format of the colour array.

  • access: protected
void _set_fill_color (array $color)
  • array $color
_set_fill_transparency (line 386)

Sets fill transparency

  • access: protected
  • see: Cpdf::setFillTransparency() Valid blend modes are (case-sensitive): Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDogde, ColorBurn, HardLight, SoftLight, Difference, Exclusion
void _set_fill_transparency (string $mode, float $opacity)
  • string $mode: the blending mode to use
  • float $opacity: 0.0 fully transparent, 1.0 fully opaque
_set_line_style (line 400)

Sets the line style

  • access: protected
  • see: Cpdf::setLineStyle()
void _set_line_style (float $width, string $cap, string $join, array $dash)
  • float $width: width
  • string $cap: cap
  • string $join: join
  • array $dash: dash
_set_line_transparency (line 369)

Sets line transparency

  • access: protected
  • see: Cpdf::setLineTransparency() Valid blend modes are (case-sensitive): Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn, HardLight, SoftLight, Difference, Exclusion
void _set_line_transparency (string $mode, float $opacity)
  • string $mode: the blending mode to use
  • float $opacity: 0.0 fully transparent, 1.0 fully opaque
_set_stroke_color (line 340)

Sets the stroke colour

See Style::set_colour() for the format of the color array.

  • access: protected
void _set_stroke_color (array $color)
  • array $color

Documentation generated on Fri, 04 Mar 2005 13:31:16 -0700 by phpDocumentor 1.3.0RC3