Browse Source

Initial commit.

master
Jesper Ek 11 years ago
commit
a7748612ee
  1. 83
      INSTALL.txt
  2. 27
      LICENSE.txt
  3. 22
      README.md
  4. 160
      README.txt
  5. 23
      composer.json
  6. 1428
      library/Zend/Pdf.php
  7. 404
      library/Zend/Pdf/Action.php
  8. 116
      library/Zend/Pdf/Action/GoTo.php
  9. 39
      library/Zend/Pdf/Action/GoTo3DView.php
  10. 38
      library/Zend/Pdf/Action/GoToE.php
  11. 38
      library/Zend/Pdf/Action/GoToR.php
  12. 39
      library/Zend/Pdf/Action/Hide.php
  13. 39
      library/Zend/Pdf/Action/ImportData.php
  14. 39
      library/Zend/Pdf/Action/JavaScript.php
  15. 38
      library/Zend/Pdf/Action/Launch.php
  16. 38
      library/Zend/Pdf/Action/Movie.php
  17. 39
      library/Zend/Pdf/Action/Named.php
  18. 39
      library/Zend/Pdf/Action/Rendition.php
  19. 39
      library/Zend/Pdf/Action/ResetForm.php
  20. 39
      library/Zend/Pdf/Action/SetOCGState.php
  21. 39
      library/Zend/Pdf/Action/Sound.php
  22. 39
      library/Zend/Pdf/Action/SubmitForm.php
  23. 38
      library/Zend/Pdf/Action/Thread.php
  24. 39
      library/Zend/Pdf/Action/Trans.php
  25. 167
      library/Zend/Pdf/Action/URI.php
  26. 38
      library/Zend/Pdf/Action/Unknown.php
  27. 230
      library/Zend/Pdf/Annotation.php
  28. 101
      library/Zend/Pdf/Annotation/FileAttachment.php
  29. 162
      library/Zend/Pdf/Annotation/Link.php
  30. 142
      library/Zend/Pdf/Annotation/Markup.php
  31. 95
      library/Zend/Pdf/Annotation/Text.php
  32. 182
      library/Zend/Pdf/Canvas.php
  33. 1217
      library/Zend/Pdf/Canvas/Abstract.php
  34. 493
      library/Zend/Pdf/Canvas/Interface.php
  35. 336
      library/Zend/Pdf/Cmap.php
  36. 447
      library/Zend/Pdf/Cmap/ByteEncoding.php
  37. 62
      library/Zend/Pdf/Cmap/ByteEncoding/Static.php
  38. 407
      library/Zend/Pdf/Cmap/SegmentToDelta.php
  39. 231
      library/Zend/Pdf/Cmap/TrimmedTable.php
  40. 53
      library/Zend/Pdf/Color.php
  41. 126
      library/Zend/Pdf/Color/Cmyk.php
  42. 84
      library/Zend/Pdf/Color/GrayScale.php
  43. 412
      library/Zend/Pdf/Color/Html.php
  44. 114
      library/Zend/Pdf/Color/Rgb.php
  45. 113
      library/Zend/Pdf/Destination.php
  46. 122
      library/Zend/Pdf/Destination/Explicit.php
  47. 75
      library/Zend/Pdf/Destination/Fit.php
  48. 75
      library/Zend/Pdf/Destination/FitBoundingBox.php
  49. 98
      library/Zend/Pdf/Destination/FitBoundingBoxHorizontally.php
  50. 98
      library/Zend/Pdf/Destination/FitBoundingBoxVertically.php
  51. 98
      library/Zend/Pdf/Destination/FitHorizontally.php
  52. 171
      library/Zend/Pdf/Destination/FitRectangle.php
  53. 98
      library/Zend/Pdf/Destination/FitVertically.php
  54. 101
      library/Zend/Pdf/Destination/Named.php
  55. 37
      library/Zend/Pdf/Destination/Unknown.php
  56. 177
      library/Zend/Pdf/Destination/Zoom.php
  57. 176
      library/Zend/Pdf/Element.php
  58. 181
      library/Zend/Pdf/Element/Array.php
  59. 83
      library/Zend/Pdf/Element/Boolean.php
  60. 236
      library/Zend/Pdf/Element/Dictionary.php
  61. 161
      library/Zend/Pdf/Element/Name.php
  62. 75
      library/Zend/Pdf/Element/Null.php
  63. 95
      library/Zend/Pdf/Element/Numeric.php
  64. 284
      library/Zend/Pdf/Element/Object.php
  65. 453
      library/Zend/Pdf/Element/Object/Stream.php
  66. 303
      library/Zend/Pdf/Element/Reference.php
  67. 83
      library/Zend/Pdf/Element/Reference/Context.php
  68. 198
      library/Zend/Pdf/Element/Reference/Table.php
  69. 130
      library/Zend/Pdf/Element/Stream.php
  70. 263
      library/Zend/Pdf/Element/String.php
  71. 98
      library/Zend/Pdf/Element/String/Binary.php
  72. 446
      library/Zend/Pdf/ElementFactory.php
  73. 158
      library/Zend/Pdf/ElementFactory/Interface.php
  74. 234
      library/Zend/Pdf/ElementFactory/Proxy.php
  75. 343
      library/Zend/Pdf/Exception.php
  76. 485
      library/Zend/Pdf/FileParser.php
  77. 217
      library/Zend/Pdf/FileParser/Font.php
  78. 1138
      library/Zend/Pdf/FileParser/Font/OpenType.php
  79. 90
      library/Zend/Pdf/FileParser/Font/OpenType/TrueType.php
  80. 63
      library/Zend/Pdf/FileParser/Image.php
  81. 329
      library/Zend/Pdf/FileParser/Image/Png.php
  82. 189
      library/Zend/Pdf/FileParserDataSource.php
  83. 198
      library/Zend/Pdf/FileParserDataSource/File.php
  84. 128
      library/Zend/Pdf/FileParserDataSource/String.php
  85. 181
      library/Zend/Pdf/Filter/Ascii85.php
  86. 135
      library/Zend/Pdf/Filter/AsciiHex.php
  87. 391
      library/Zend/Pdf/Filter/Compression.php
  88. 102
      library/Zend/Pdf/Filter/Compression/Flate.php
  89. 95
      library/Zend/Pdf/Filter/Compression/Lzw.php
  90. 50
      library/Zend/Pdf/Filter/Interface.php
  91. 125
      library/Zend/Pdf/Filter/RunLength.php
  92. 732
      library/Zend/Pdf/Font.php
  93. 247
      library/Zend/Pdf/Image.php
  94. 154
      library/Zend/Pdf/NameTree.php
  95. 373
      library/Zend/Pdf/Outline.php
  96. 315
      library/Zend/Pdf/Outline/Created.php
  97. 460
      library/Zend/Pdf/Outline/Loaded.php
  98. 773
      library/Zend/Pdf/Page.php
  99. 472
      library/Zend/Pdf/Parser.php
  100. 45
      library/Zend/Pdf/RecursivelyIteratableObjectsContainer.php

83
INSTALL.txt

@ -0,0 +1,83 @@
INSTALLATION
------------
Zend Framework requires no special installation steps. Simply download the framework,
extract it to the folder you would like to keep it in, and add the library directory
to your PHP include_path. To use components in the extras library, add the extras/library
directory to your PHP include_path, as well.
If you would like to use Zend_Tool, simply add bin/zf.bat (for Windows) or
bin/zf.sh (for anything else) to your system executable path.
SYSTEM REQUIREMENTS
-------------------
Zend Framework requires PHP 5.2.11 or later. Please see the system requirements
appendix for more detailed information:
http://framework.zend.com/manual/en/requirements.html
DEVELOPMENT VERSIONS
--------------------
If you would like to preview enhancements or bug fixes that have not yet been
released, you can obtain the current development version of Zend Framework using one
of the following methods:
* Download the latest nightly snapshot. For those who care to brave the cutting
(often bleeding) edge, the nightly snapshots represent the latest single-
download development version of Zend Framework development. Snapshots are bundled
with documentation in English only or in all available languages. If you anticipate
updating to the latest development version of Zend Framework often, consider using
Subversion as described below.
http://framework.zend.com/download/snapshot
* Using a Subversion (SVN) client. Zend Framework is open source software, and
the Subversion repository used for its development is publicly available. Consider
using SVN to get Zend Framework if you already use SVN for your application
development, want to contribute back to the framework, or need to upgrade your
framework version very often.
Exporting is useful if you want to get a particular framework revision without the
.svn directories as created in a working copy.
Checking out a working copy is necessary if you would like to directly contribute
to Zend Framework; a working copy can be updated any time with svn update.
An externals definition is highly convenient for developers already using SVN to
manage their application working copies.
The URL for the trunk of the Zend Framework SVN repository is:
http://framework.zend.com/svn/framework/trunk
For more information about Subversion, please see the official website:
http://subversion.tigris.org
CONFIGURING THE INCLUDE PATH
----------------------------
Once you have a copy of Zend Framework available, your application will need to
access the framework classes. Though there are several ways to achieve this, your
PHP include_path needs to contain the path to the Zend Framework classes under the
/library directory in this distribution. You can find out more about the PHP
include_path configuration directive here:
http://www.php.net/manual/en/ini.core.php#ini.include-path
Instructions on how to change PHP configuration directives can be found here:
http://www.php.net/manual/en/configuration.changes.php
GETTING STARTED
---------------
A great place to get up-to-speed quickly is the Zend Framework QuickStart:
http://framework.zend.com/docs/quickstart
The QuickStart covers some of the most commonly used components of ZF. Since
Zend Framework is designed with a use-at-will architecture and components are
loosely coupled, you can select and use only those components that are needed for
your project.

27
LICENSE.txt

@ -0,0 +1,27 @@
Copyright (c) 2005-2012, Zend Technologies USA, Inc.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of Zend Technologies USA, Inc. nor the names of its
contributors may be used to endorse or promote products derived from this
software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

22
README.md

@ -0,0 +1,22 @@
Zend Framework 1 for Composer
=============================
This package is a part of the Zend Framework 1. Each component was separated and put into its own composer package. Some modifications were made for improved [Composer](http://getcomposer.org/) integration. This package can also be found at [Packagist](http://packagist.org/packages/zf1).
## Why?
**Size!** Zend Framework is very large and contains a huge amount of files (over 72000 files in the main repository!). If you're only using a part of the framework, using the separated packages will greatly reduce the amount of files. This will make setup faster and easier on your disks.
**Autoloading!** Explicit `require_once` calls in the source code has been commented out to rely on composer autoloading, this reduces the number of included files to a minimum.
**Migration!** Zend Framework 2 has been around for a while now, and migrating all your projects takes a lot of time. Using these packages makes it easier to migrate each component separately. Also, some packages doesn't exist in zf2 (such as the zend-search-lucene), now you can continue using that package without requiring the entire framework.
If you're using major parts of the framework, I would recommend checking out the [zendframework1 package](https://github.com/bombayworks/zendframework1), which contains the entire framework optimized for composer usage.
## How to use
Add `"zf1/zend-pdf": "~1.12"` to the require section of your composer.json, include the composer autoloader and you're good to go.
## Broken dependencies?
Dependencies have been set automatically based on the [requirements from the zend framework manual](http://framework.zend.com/manual/1.12/en/requirements.introduction.html), if you find any broken dependencies please submit an issue.

160
README.txt

@ -0,0 +1,160 @@
Welcome to the Zend Framework 1.12 Release!
RELEASE INFORMATION
---------------
Zend Framework 1.12.3 Release ([INSERT REV NUM HERE]).
Released on March 13, 2013
IMPORTANT FIXES FOR 1.12.3
--------------------------
This release incorporates is primarily aimed to update
Zend_Service_Twitter to the Twitter v1.1 API:
- http://framework.zend.com/issues/browse/ZF-12530
Because the Twitter v1.1 API is not backwards compatible with v1.0, the
API for Zend_Service_Twitter has been changed; if you have been using it
previously, you will need to update your code accordingly. Both the
end-user and API documentation have been updated to reflect the changes.
NEW FEATURES
============
Zend_Loader changes
----
A number of autoloaders and autoloader facilities were back ported from
ZF2 to provide performant alternatives to those already available in the
1.X releases. These include: Zend_Loader_StandardAutoloader, which
improves on Zend_Loader_Autoloader by allowing the ability to specify a
specific path to associate with a vendor prefix or namespace;
Zend_Loader_ClassMapAutoloader, which provides the ability to use lookup
tables for autoloading (which are typically the fastest possible way to
autoload); and Zend_Loader_AutoloaderFactory, which can both create and
update autoloaders for you, as well as register them with
spl_autoload_register().
The Zend_Loader changes were back ported from ZF2 by Matthew Weier
Oโ€™Phinney
Zend_EventManager
----
Zend_EventManager is a component that allows you to attach and detach
listeners to named events, both on a per-instance basis as well as via
shared collections; trigger events; and interrupt execution of
listeners.
Zend_EventManager was back ported from ZF2 by Matthew Weier Oโ€™Phinney
Zend_Http_UserAgent_Features_Adapter_Browscap
----
This class provides a features adapter that calls get_browser() in order
to discover mobile device capabilities to inject into UserAgent device
instances.
Browscap (http://browsers.garykeith.com/) is an open project dedicated
to collecting an disseminating a โ€œdatabaseโ€ of browser capabilities. PHP
has built-in support for using these files via the get_browser()
function. This function requires that your php.ini provides a browscap
entry pointing to the PHP-specific php_browscap.ini file which is
available at http://browsers.garykeith.com/stream.asp?PHP_BrowsCapINI.
Zend_Http_UserAgent_Features_Adapter_Browscap was created by Matthew
Weier Oโ€™Phinney
Zend_Mobile_Push
----
Zend_Mobile_Push is a component for implementing push notifications for
the 3 major push notification platforms (Apple (Apns), Google (C2dm) and
Microsoft (Mpns).
Zend_Mobile_Push was contributed by Mike Willbanks.
Zend_Gdata_Analytics
----
Zend_Gdata_Analytics is an extension to Zend_Gdata to allow interaction
with Googleโ€™s Analytics Data Export API. This extension does not
encompass any major changes in the overall operation of Zend_Gdata
components.
Zend_Gdata_Analytics was contributed by Daniel Hartmann.
Removed features
================
Zend_Http_UserAgent_Features_Adapter_WurflApi
----
Due to the changes in licensing of WURFL, we have removed the WurflApi
adapter. We will be providing the WurflApi adapter to ScientiaMobile so
that users of WURFL will still have that option.
Bug Fixes
=========
In addition, over 200 reported issues in the tracker have been fixed.
Weโ€™d like to particularly thank Adam Lundrigan, Frank Brรผckner and
Martin Hujer for their efforts in making this happen. Thanks also to the
many people who ran the ZF1 unit tests and reported their results!
For a complete list, visit:
* http://framework.zend.com/issues/secure/IssueNavigator.jspa?requestId=12877
* http://framework.zend.com/changelog/
MIGRATION NOTES
---------------
A detailed list of migration notes may be found at:
http://framework.zend.com/manual/en/migration.html
SYSTEM REQUIREMENTS
-------------------
Zend Framework requires PHP 5.2.11 or later. Please see our reference
guide for more detailed system requirements:
http://framework.zend.com/manual/en/requirements.html
INSTALLATION
------------
Please see INSTALL.txt.
QUESTIONS AND FEEDBACK
----------------------
Online documentation can be found at http://framework.zend.com/manual.
Questions that are not addressed in the manual should be directed to the
appropriate mailing list:
http://framework.zend.com/wiki/display/ZFDEV/Mailing+Lists
If you find code in this release behaving in an unexpected manner or
contrary to its documented behavior, please create an issue in the Zend
Framework issue tracker at:
http://framework.zend.com/issues
If you would like to be notified of new releases, you can subscribe to
the fw-announce mailing list by sending a blank message to
fw-announce-subscribe@lists.zend.com.
LICENSE
-------
The files in this archive are released under the Zend Framework license.
You can find a copy of this license in LICENSE.txt.
ACKNOWLEDGEMENTS
----------------
The Zend Framework team would like to thank all the contributors to the Zend
Framework project, our corporate sponsor, and you, the Zend Framework user.
Please visit us sometime soon at http://framework.zend.com.

23
composer.json

@ -0,0 +1,23 @@
{
"name": "zf1/zend-pdf",
"description": "Zend Framework 1 Pdf package",
"keywords": [
"framework",
"zf1",
"zend",
"pdf"
],
"homepage": "http://framework.zend.com/",
"license": "BSD-3-Clause",
"require": {
"php": ">=5.2.11",
"zf1/zend-exception": "self.version",
"zf1/zend-log": "self.version",
"zf1/zend-memory": "self.version"
},
"autoload": {
"psr-0": {
"Zend_Pdf": "library/"
}
}
}

1428
library/Zend/Pdf.php
File diff suppressed because it is too large
View File

404
library/Zend/Pdf/Action.php

@ -0,0 +1,404 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Action.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Internally used classes */
// require_once 'Zend/Pdf/Element.php';
// require_once 'Zend/Pdf/Element/Array.php';
/** Zend_Pdf_Target */
// require_once 'Zend/Pdf/Target.php';
/**
* Abstract PDF action representation class
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
abstract class Zend_Pdf_Action extends Zend_Pdf_Target implements RecursiveIterator, Countable
{
/**
* Action dictionary
*
* @var Zend_Pdf_Element_Dictionary|Zend_Pdf_Element_Object|Zend_Pdf_Element_Reference
*/
protected $_actionDictionary;
/**
* An original list of chained actions
*
* @var array Array of Zend_Pdf_Action objects
*/
protected $_originalNextList;
/**
* A list of next actions in actions tree (used for actions chaining)
*
* @var array Array of Zend_Pdf_Action objects
*/
public $next = array();
/**
* Object constructor
*
* @param Zend_Pdf_Element_Dictionary $dictionary
* @param SplObjectStorage $processedActions list of already processed action dictionaries, used to avoid cyclic references
* @throws Zend_Pdf_Exception
*/
public function __construct(Zend_Pdf_Element $dictionary, SplObjectStorage $processedActions)
{
// require_once 'Zend/Pdf/Element.php';
if ($dictionary->getType() != Zend_Pdf_Element::TYPE_DICTIONARY) {
// require_once 'Zend/Pdf/Exception.php';
throw new Zend_Pdf_Exception('$dictionary mast be a direct or an indirect dictionary object.');
}
$this->_actionDictionary = $dictionary;
if ($dictionary->Next !== null) {
if ($dictionary->Next instanceof Zend_Pdf_Element_Dictionary) {
// Check if dictionary object is not already processed
if (!$processedActions->contains($dictionary->Next)) {
$processedActions->attach($dictionary->Next);
$this->next[] = Zend_Pdf_Action::load($dictionary->Next, $processedActions);
}
} else if ($dictionary->Next instanceof Zend_Pdf_Element_Array) {
foreach ($dictionary->Next->items as $chainedActionDictionary) {
// Check if dictionary object is not already processed
if (!$processedActions->contains($chainedActionDictionary)) {
$processedActions->attach($chainedActionDictionary);
$this->next[] = Zend_Pdf_Action::load($chainedActionDictionary, $processedActions);
}
}
} else {
// require_once 'Zend/Pdf/Exception.php';
throw new Zend_Pdf_Exception('PDF Action dictionary Next entry must be a dictionary or an array.');
}
}
$this->_originalNextList = $this->next;
}
/**
* Load PDF action object using specified dictionary
*
* @internal
* @param Zend_Pdf_Element $dictionary (It's actually Dictionary or Dictionary Object or Reference to a Dictionary Object)
* @param SplObjectStorage $processedActions list of already processed action dictionaries, used to avoid cyclic references
* @return Zend_Pdf_Action
* @throws Zend_Pdf_Exception
*/
public static function load(Zend_Pdf_Element $dictionary, SplObjectStorage $processedActions = null)
{
if ($processedActions === null) {
$processedActions = new SplObjectStorage();
}
// require_once 'Zend/Pdf/Element.php';
if ($dictionary->getType() != Zend_Pdf_Element::TYPE_DICTIONARY) {
// require_once 'Zend/Pdf/Exception.php';
throw new Zend_Pdf_Exception('$dictionary mast be a direct or an indirect dictionary object.');
}
if (isset($dictionary->Type) && $dictionary->Type->value != 'Action') {
// require_once 'Zend/Pdf/Exception.php';
throw new Zend_Pdf_Exception('Action dictionary Type entry must be set to \'Action\'.');
}
if ($dictionary->S === null) {
// require_once 'Zend/Pdf/Exception.php';
throw new Zend_Pdf_Exception('Action dictionary must contain S entry');
}
switch ($dictionary->S->value) {
case 'GoTo':
// require_once 'Zend/Pdf/Action/GoTo.php';
return new Zend_Pdf_Action_GoTo($dictionary, $processedActions);
break;
case 'GoToR':
// require_once 'Zend/Pdf/Action/GoToR.php';
return new Zend_Pdf_Action_GoToR($dictionary, $processedActions);
break;
case 'GoToE':
// require_once 'Zend/Pdf/Action/GoToE.php';
return new Zend_Pdf_Action_GoToE($dictionary, $processedActions);
break;
case 'Launch':
// require_once 'Zend/Pdf/Action/Launch.php';
return new Zend_Pdf_Action_Launch($dictionary, $processedActions);
break;
case 'Thread':
// require_once 'Zend/Pdf/Action/Thread.php';
return new Zend_Pdf_Action_Thread($dictionary, $processedActions);
break;
case 'URI':
// require_once 'Zend/Pdf/Action/URI.php';
return new Zend_Pdf_Action_URI($dictionary, $processedActions);
break;
case 'Sound':
// require_once 'Zend/Pdf/Action/Sound.php';
return new Zend_Pdf_Action_Sound($dictionary, $processedActions);
break;
case 'Movie':
// require_once 'Zend/Pdf/Action/Movie.php';
return new Zend_Pdf_Action_Movie($dictionary, $processedActions);
break;
case 'Hide':
// require_once 'Zend/Pdf/Action/Hide.php';
return new Zend_Pdf_Action_Hide($dictionary, $processedActions);
break;
case 'Named':
// require_once 'Zend/Pdf/Action/Named.php';
return new Zend_Pdf_Action_Named($dictionary, $processedActions);
break;
case 'SubmitForm':
// require_once 'Zend/Pdf/Action/SubmitForm.php';
return new Zend_Pdf_Action_SubmitForm($dictionary, $processedActions);
break;
case 'ResetForm':
// require_once 'Zend/Pdf/Action/ResetForm.php';
return new Zend_Pdf_Action_ResetForm($dictionary, $processedActions);
break;
case 'ImportData':
// require_once 'Zend/Pdf/Action/ImportData.php';
return new Zend_Pdf_Action_ImportData($dictionary, $processedActions);
break;
case 'JavaScript':
// require_once 'Zend/Pdf/Action/JavaScript.php';
return new Zend_Pdf_Action_JavaScript($dictionary, $processedActions);
break;
case 'SetOCGState':
// require_once 'Zend/Pdf/Action/SetOCGState.php';
return new Zend_Pdf_Action_SetOCGState($dictionary, $processedActions);
break;
case 'Rendition':
// require_once 'Zend/Pdf/Action/Rendition.php';
return new Zend_Pdf_Action_Rendition($dictionary, $processedActions);
break;
case 'Trans':
// require_once 'Zend/Pdf/Action/Trans.php';
return new Zend_Pdf_Action_Trans($dictionary, $processedActions);
break;
case 'GoTo3DView':
// require_once 'Zend/Pdf/Action/GoTo3DView.php';
return new Zend_Pdf_Action_GoTo3DView($dictionary, $processedActions);
break;
default:
// require_once 'Zend/Pdf/Action/Unknown.php';
return new Zend_Pdf_Action_Unknown($dictionary, $processedActions);
break;
}
}
/**
* Get resource
*
* @internal
* @return Zend_Pdf_Element
*/
public function getResource()
{
return $this->_actionDictionary;
}
/**
* Dump Action and its child actions into PDF structures
*
* Returns dictionary indirect object or reference
*
* @internal
* @param Zend_Pdf_ElementFactory $factory Object factory for newly created indirect objects
* @param SplObjectStorage $processedActions list of already processed actions (used to prevent infinity loop caused by cyclic references)
* @return Zend_Pdf_Element_Object|Zend_Pdf_Element_Reference Dictionary indirect object
*/
public function dumpAction(Zend_Pdf_ElementFactory_Interface $factory, SplObjectStorage $processedActions = null)
{
if ($processedActions === null) {
$processedActions = new SplObjectStorage();
}
if ($processedActions->contains($this)) {
// require_once 'Zend/Pdf/Exception.php';
throw new Zend_Pdf_Exception('Action chain cyclyc reference is detected.');
}
$processedActions->attach($this);
$childListUpdated = false;
if (count($this->_originalNextList) != count($this->next)) {
// If original and current children arrays have different size then children list was updated
$childListUpdated = true;
} else if ( !(array_keys($this->_originalNextList) === array_keys($this->next)) ) {
// If original and current children arrays have different keys (with a glance to an order) then children list was updated
$childListUpdated = true;
} else {
foreach ($this->next as $key => $childAction) {
if ($this->_originalNextList[$key] !== $childAction) {
$childListUpdated = true;
break;
}
}
}
if ($childListUpdated) {
$this->_actionDictionary->touch();
switch (count($this->next)) {
case 0:
$this->_actionDictionary->Next = null;
break;
case 1:
$child = reset($this->next);
$this->_actionDictionary->Next = $child->dumpAction($factory, $processedActions);
break;
default:
// require_once 'Zend/Pdf/Element/Array.php';
$pdfChildArray = new Zend_Pdf_Element_Array();
foreach ($this->next as $child) {
$pdfChildArray->items[] = $child->dumpAction($factory, $processedActions);
}
$this->_actionDictionary->Next = $pdfChildArray;
break;
}
} else {
foreach ($this->next as $child) {
$child->dumpAction($factory, $processedActions);
}
}
if ($this->_actionDictionary instanceof Zend_Pdf_Element_Dictionary) {
// It's a newly created action. Register it within object factory and return indirect object
return $factory->newObject($this->_actionDictionary);
} else {
// It's a loaded object
return $this->_actionDictionary;
}
}
////////////////////////////////////////////////////////////////////////
// RecursiveIterator interface methods
//////////////
/**
* Returns current child action.
*
* @return Zend_Pdf_Action
*/
public function current()
{
return current($this->next);
}
/**
* Returns current iterator key
*
* @return integer
*/
public function key()
{
return key($this->next);
}
/**
* Go to next child
*/
public function next()
{
return next($this->next);
}
/**
* Rewind children
*/
public function rewind()
{
return reset($this->next);
}
/**
* Check if current position is valid
*
* @return boolean
*/
public function valid()
{
return current($this->next) !== false;
}
/**
* Returns the child action.
*
* @return Zend_Pdf_Action|null
*/
public function getChildren()
{
return current($this->next);
}
/**
* Implements RecursiveIterator interface.
*
* @return bool whether container has any pages
*/
public function hasChildren()
{
return count($this->next) > 0;
}
////////////////////////////////////////////////////////////////////////
// Countable interface methods
//////////////
/**
* count()
*
* @return int
*/
public function count()
{
return count($this->childOutlines);
}
}

116
library/Zend/Pdf/Action/GoTo.php

@ -0,0 +1,116 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: GoTo.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Internally used classes */
// require_once 'Zend/Pdf/Destination.php';
// require_once 'Zend/Pdf/Element/Dictionary.php';
// require_once 'Zend/Pdf/Element/Name.php';
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Go to' action
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_GoTo extends Zend_Pdf_Action
{
/**
* GoTo Action destination
*
* @var Zend_Pdf_Destination
*/
protected $_destination;
/**
* Object constructor
*
* @param Zend_Pdf_Element_Dictionary $dictionary
* @param SplObjectStorage $processedActions list of already processed action dictionaries, used to avoid cyclic references
*/
public function __construct(Zend_Pdf_Element $dictionary, SplObjectStorage $processedActions)
{
parent::__construct($dictionary, $processedActions);
$this->_destination = Zend_Pdf_Destination::load($dictionary->D);
}
/**
* Create new Zend_Pdf_Action_GoTo object using specified destination
*
* @param Zend_Pdf_Destination|string $destination
* @return Zend_Pdf_Action_GoTo
*/
public static function create($destination)
{
if (is_string($destination)) {
// require_once 'Zend/Pdf/Destination/Named.php';
$destination = Zend_Pdf_Destination_Named::create($destination);
}
if (!$destination instanceof Zend_Pdf_Destination) {
// require_once 'Zend/Pdf/Exception.php';
throw new Zend_Pdf_Exception('$destination parameter must be a Zend_Pdf_Destination object or string.');
}
$dictionary = new Zend_Pdf_Element_Dictionary();
$dictionary->Type = new Zend_Pdf_Element_Name('Action');
$dictionary->S = new Zend_Pdf_Element_Name('GoTo');
$dictionary->Next = null;
$dictionary->D = $destination->getResource();
return new Zend_Pdf_Action_GoTo($dictionary, new SplObjectStorage());
}
/**
* Set goto action destination
*
* @param Zend_Pdf_Destination|string $destination
* @return Zend_Pdf_Action_GoTo
*/
public function setDestination(Zend_Pdf_Destination $destination)
{
$this->_destination = $destination;
$this->_actionDictionary->touch();
$this->_actionDictionary->D = $destination->getResource();
return $this;
}
/**
* Get goto action destination
*
* @return Zend_Pdf_Destination
*/
public function getDestination()
{
return $this->_destination;
}
}

39
library/Zend/Pdf/Action/GoTo3DView.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: GoTo3DView.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Set the current view of a 3D annotation' action
* PDF 1.6+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_GoTo3DView extends Zend_Pdf_Action
{
}

38
library/Zend/Pdf/Action/GoToE.php

@ -0,0 +1,38 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: GoToE.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Go to a destination in an embedded file' action
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_GoToE extends Zend_Pdf_Action
{
}

38
library/Zend/Pdf/Action/GoToR.php

@ -0,0 +1,38 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: GoToR.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Go to a destination in another document' action
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_GoToR extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/Hide.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Hide.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Set an annotationโ€™s Hidden flag' action
* PDF 1.2+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_Hide extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/ImportData.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: ImportData.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Import field values from a file' action
* PDF 1.2+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_ImportData extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/JavaScript.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: JavaScript.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Execute a JavaScript script' action
* PDF 1.3+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_JavaScript extends Zend_Pdf_Action
{
}

38
library/Zend/Pdf/Action/Launch.php

@ -0,0 +1,38 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Launch.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Launch an application, usually to open a file' action
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_Launch extends Zend_Pdf_Action
{
}

38
library/Zend/Pdf/Action/Movie.php

@ -0,0 +1,38 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Movie.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Play a movie' action
* PDF 1.2+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_Movie extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/Named.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Named.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Execute an action predefined by the viewer application' action
* PDF 1.2+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_Named extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/Rendition.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Rendition.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Controls the playing of multimedia content' action
* PDF 1.5+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_Rendition extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/ResetForm.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: ResetForm.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Set fields to their default values' action
* PDF 1.2+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_ResetForm extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/SetOCGState.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: SetOCGState.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Set the states of optional content groups' action
* PDF 1.5+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_SetOCGState extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/Sound.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Sound.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Play a sound' action representation class
* PDF 1.2+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_Sound extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/SubmitForm.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: SubmitForm.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Send data to a uniform resource locator' action
* PDF 1.2+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_SubmitForm extends Zend_Pdf_Action
{
}

38
library/Zend/Pdf/Action/Thread.php

@ -0,0 +1,38 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Thread.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Begin reading an article thread' action
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_Thread extends Zend_Pdf_Action
{
}

39
library/Zend/Pdf/Action/Trans.php

@ -0,0 +1,39 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Trans.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Updates the display of a document, using a transition dictionary' action
* PDF 1.5+ feature
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_Trans extends Zend_Pdf_Action
{
}

167
library/Zend/Pdf/Action/URI.php

@ -0,0 +1,167 @@
<?php
/**
* Zend Framework
*
* 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
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: URI.php 24593 2012-01-05 20:35:02Z matthew $
*/
/** Internally used classes */
// require_once 'Zend/Pdf/Element/Dictionary.php';
// require_once 'Zend/Pdf/Element/Name.php';
// require_once 'Zend/Pdf/Element/String.php';
// require_once 'Zend/Pdf/Element/Boolean.php';
/** Zend_Pdf_Action */
// require_once 'Zend/Pdf/Action.php';
/**
* PDF 'Resolve a uniform resource identifier' action
*
* A URI action causes a URI to be resolved.
*
* @package Zend_Pdf
* @subpackage Actions
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class Zend_Pdf_Action_URI extends Zend_Pdf_Action
{
/**
* Object constructor
*
* @param Zend_Pdf_Element_Dictionary $dictionary
* @param SplObjectStorage $processedActions list of already processed action dictionaries, used to avoid cyclic references
* @throws Zend_Pdf_Exception
*/
public function __construct(Zend_Pdf_Element $dictionary, SplObjectStorage $processedActions)