array(), 'XObject' => array(), 'ExtGState' => array()); /** * Object constructor * * @param float $width * @param float $height */ public function __construct($width, $height) { $this->_width = $width; $this->_height = $height; } /** * Add procedure set to the canvas description * * @param string $procSetName */ protected function _addProcSet($procSetName) { $this->_procset[$procSetName] = 1; } /** * Attach resource to the canvas * * Method returns a name of the resource which can be used * as a resource reference within drawing instructions stream * Allowed types: 'XObject' (image), 'Font', 'ExtGState' * * @param string $type * @param Zend_Pdf_Resource $resource * @return string */ protected function _attachResource($type, Zend_Pdf_Resource $resource) { // Check, that resource is already attached to resource set. $resObject = $resource->getResource(); foreach ($this->_resources[$type] as $resName => $collectedResObject) { if ($collectedResObject === $resObject) { return $resName; } } $idCounter = 1; do { $newResName = $type[0] . $idCounter++; } while (isset($this->_resources[$type][$newResName])); $this->_resources[$type][$newResName] = $resObject; return $newResName; } /** * Return the height of this page in points. * * @return float */ public function getHeight() { return $this->_height; } /** * Return the width of this page in points. * * @return float */ public function getWidth() { return $this->_width; } }