Pdf/ElementFactory.php
LICENSE
This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Pdf
- Version
- $Id: ElementFactory.php 24593 2012-01-05 20:35:02Z matthew $
\Zend_Pdf_ElementFactory
Responsibility is to log PDF changes
- Implements
- \Zend_Pdf_ElementFactory_Interface
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
Properties


array $_attachedFactories = array()
Array of Zend_Pdf_ElementFactory_Interface objects
array()
Details- Type
- array


integer $_identity = 0
0
Details- Type
- integer


array $_modifiedObjects = array()
Also contains new and removed objects
Array: ojbectNumber => Zend_Pdf_Element_Object
array()
Details- Type
- array


integer $_objectCount
Actually it's an object number for new PDF object
- Type
- integer


array $_registeredObjects = array()
Used for resources clean up when factory is destroyed.
Array of Zend_Pdf_Element objects
array()
Details- Type
- array


\SplObjectStorage $_removedObjects
Array: ojbectNumber => Zend_Pdf_Element_Object
Methods


__construct(integer $objCount) : void
Object constructor
Name | Type | Description |
---|---|---|
$objCount | integer |


attach(\Zend_Pdf_ElementFactory_Interface $factory) : void
Attach factory to the current;
Name | Type | Description |
---|---|---|
$factory | \Zend_Pdf_ElementFactory_Interface |


calculateShift(\Zend_Pdf_ElementFactory_Interface $factory) : integer
Calculate object enumeration shift.
Name | Type | Description |
---|---|---|
$factory | \Zend_Pdf_ElementFactory_Interface |
Type | Description |
---|---|
integer |


cleanEnumerationShiftCache() : integer
Clean enumeration shift cache.
Has to be used after PDF render operation to let followed updates be correct.
Type | Description |
---|---|
integer |


createFactory(integer $objCount) : \Zend_Pdf_ElementFactory_Interface
Factory generator
Name | Type | Description |
---|---|---|
$objCount | integer |
Type | Description |
---|---|
\Zend_Pdf_ElementFactory_Interface |


fetchObject(string $refString) : \Zend_Pdf_Element_Object | null
Fetch object specified by reference
Name | Type | Description |
---|---|---|
$refString | string |
Type | Description |
---|---|
\Zend_Pdf_Element_Object | null |


getEnumerationShift(\Zend_Pdf_ElementFactory_Interface $factory) : integer
Retrive object enumeration shift.
Name | Type | Description |
---|---|---|
$factory | \Zend_Pdf_ElementFactory_Interface |
Type | Description |
---|---|
integer |
Exception | Description |
---|---|
\Zend_Pdf_Exception |


getFactory() : \Zend_Pdf_ElementFactory_Interface
Get factory
Type | Description |
---|---|
\Zend_Pdf_ElementFactory_Interface |


listModifiedObjects(\Zend_Pdf_ElementFactory_Interface $rootFactory = null) : array
Enumerate modified objects.
Returns array of Zend_Pdf_UpdateInfoContainer
Name | Type | Description |
---|---|---|
$rootFactory | \Zend_Pdf_ElementFactory_Interface |
Type | Description |
---|---|
array |


markAsModified(\Zend_Pdf_Element_Object $obj) : void
Mark object as modified in context of current factory.
Name | Type | Description |
---|---|---|
$obj | \Zend_Pdf_Element_Object |
Exception | Description |
---|---|
\Zend_Pdf_Exception |


newObject(\Zend_Pdf_Element $objectValue) : \Zend_Pdf_Element_Object
Generate new Zend_Pdf_Element_Object
Name | Type | Description |
---|---|---|
$objectValue | \Zend_Pdf_Element |
Type | Description |
---|---|
\Zend_Pdf_Element_Object |
- Todo
- Reusage of the freed object. It's not a support of new feature, but only improvement.


newStreamObject( $streamValue) : \Zend_Pdf_Element_Object_Stream
Generate new Zend_Pdf_Element_Object_Stream
Name | Type | Description |
---|---|---|
$streamValue |
Type | Description |
---|---|
\Zend_Pdf_Element_Object_Stream |
- Todo
- Reusage of the freed object. It's not a support of new feature, but only improvement.


registerObject(\Zend_Pdf_Element_Object $obj, string $refString) : void
Register object in the factory
It's used to clear "parent object" referencies when factory is closed and clean up resources
Name | Type | Description |
---|---|---|
$obj | \Zend_Pdf_Element_Object | |
$refString | string |


remove(\Zend_Pdf_Element_Object $obj) : void
Remove object in context of current factory.
Name | Type | Description |
---|---|---|
$obj | \Zend_Pdf_Element_Object |
Exception | Description |
---|---|
\Zend_Pdf_Exception |


resolve() : \Zend_Pdf_ElementFactory
Get source factory object
Type | Description |
---|---|
\Zend_Pdf_ElementFactory |