setasign\SetaPDF2\Stamper\Stamp
PdfStamp The PDF stamp class
File: /SetaPDF v2/Stamper/Stamp/PdfStamp.php
Old class name (alias):
\SetaPDF_Stamper_Stamp_Pdf
To initiate an instance it is needed to pass a document instance to the constructor. The second parameter could be used to set the page number of the page which will be used as the stamp appearance.
$document = \SetaPDF_Core_Document::loadByFilename('path/to/document.pdf'); $stamp = new \SetaPDF_Stamper_Stamp_Pdf($document, 2); // use page 2
Class hierarchy
Summary
Methods
- __construct()
- _cacheStampData()
- _ensureResources()
- _getOpacityGraphicState()
- _getPage()
- _getVisibilityGroup()
- _postStamp()
- _preStamp()
- _putAction()
- _stamp()
- _stampByCache()
- getAction()
- getBoundaryBox()
- getDimensions()
- getDocument()
- getHeight()
- getOpacity()
- getOpacityBlendMode()
- getOptionalContentGroup()
- getOriginX()
- getOriginY()
- getPageNumber()
- getVisibility()
- getWidth()
- getXObject()
- setAction()
- setBoundaryBox()
- setDimensions()
- setHeight()
- setLink()
- setOpacity()
- setOptionalContentGroup()
- setPageNumber()
- setVisibility()
- setWidth()
- stamp()
- updateCacheCounter()
Constants
VISIBILITY_ALL
Visibility constant
VISIBILITY_PRINT
Visibility constant
VISIBILITY_VIEW
Visibility constant
Properties
$_action
The currently attached action object
$_dataCache
$_document
The document instance
$_opacityGs
Graphic state objects for handling transparency
Array of \setasign\SetaPDF2\Core\Resource\ExtGState objects
$_pageNumber
The page number
$_xObject
The XObject of the page
Methods
__construct()
int $pageNumber = 1,
string $boundaryBox = \setasign\SetaPDF2\Core\PageBoundaries::CROP_BOX
The constructor.
Parameters
- $filenameOrDocument : \SetaPDF_Core_Document|string
Filename of the pdf or a document instance of the pdf
- $pageNumber : int
The page number for the page which should be used for the stamp appearance
- $boundaryBox : string
Use the boundary constants \setasign\SetaPDF2\Core\PageBoundaries::XXX_BOX
_cacheStampData()
string $stream,
array $quadPoints
Caches a content stream part.
Parameters
- $cacheKey : string
- $stream : string
- $quadPoints : array
_ensureResources()
Ensures that all stamp resources are added to the page.
This is needed to reuse a cached stamp stream.
Parameters
- $document : \SetaPDF_Core_Document
- $page : \SetaPDF_Core_Document_Page
Return Values
An array of resource names
Exceptions
Throws \setasign\SetaPDF2\Core\SecHandler\Exception
Throws \setasign\SetaPDF2\Core\Type\Exception
See
_getOpacityGraphicState()
Get and caches opacity graphic states.
Parameters
- $document : \SetaPDF_Core_Document
- $opacity : float
_getVisibilityGroup()
Get and adds the visibility group of this stamp to a document.
Parameters
- $document : \SetaPDF_Core_Document
Exceptions
_postStamp()
Method which is called after the main stamp method is executed.
Parameters
- $document : \SetaPDF_Core_Document
- $page : \SetaPDF_Core_Document_Page
- $stampData : array
Exceptions
_preStamp()
Method which is called before the main stamp method is executed.
Parameters
- $document : \SetaPDF_Core_Document
- $page : \SetaPDF_Core_Document_Page
- $stampData : array
Exceptions
_putAction()
\SetaPDF_Core_Document_Page $page,
array $stampData,
number $xy1,
number $xy2,
number $xy3,
number $xy4
Put the action via an link annotation above the stamp object.
Parameters
- $document : \SetaPDF_Core_Document
- $page : \SetaPDF_Core_Document_Page
- $stampData : array
- $xy1 : number
- $xy2 : number
- $xy3 : number
- $xy4 : number
Exceptions
_stamp()
Writes the xobject draw operators of this stamp onto the canvas.
A page is internally converted into a xobject.
Parameters
- $document : \SetaPDF_Core_Document
- $page : \SetaPDF_Core_Document_Page
- $stampData : array
_stampByCache()
Try to stamp with the page with a cached content stream part.
Parameters
- $document : \SetaPDF_Core_Document
- $page : \SetaPDF_Core_Document_Page
- $stampData : array
Return Values
True if the stamp was written by a cache object, a cache key if it was not found
Exceptions
Throws \setasign\SetaPDF2\Core\SecHandler\Exception
getOptionalContentGroup()
Get the optional content group for this stamp.
getOriginX()
Get the x-origin in view to the position of the stamp object.
Parameters
- $page : \SetaPDF_Core_Document_Page
The page instance
- $position : string
Position constant \setasign\SetaPDF2\Stamper\Stamper::POSITION_XXX
Exceptions
getOriginY()
Get the y-origin in view to the position of the stamp object.
Parameters
- $page : \SetaPDF_Core_Document_Page
The page instance
- $position : string
Position constant \setasign\SetaPDF2\Stamper\Stamper::POSITION_XXX
Exceptions
getXObject()
Get the form XObject from the page object.
Parameters
- $document : \SetaPDF_Core_Document
The document instance
setAction()
Add an action object to the stamp object.
Parameters
- $action : \SetaPDF_Core_Document_Action
The action object
setBoundaryBox()
Set the boundary box of the imported page.
Parameters
- $boundaryBox : string
Use the boundary constants \setasign\SetaPDF2\Core\PageBoundaries::XXX_BOX
setDimensions()
Set the dimensions of this stamp.
Parameters
- $width : float|int
The new width
- $height : float|int
The new height
setLink()
Set a link onto the stamp.
Parameters
- $uri : string
The link
Exceptions
Throws \setasign\SetaPDF2\Core\Type\Exception
See
setOpacity()
Set the opacity and blend mode of the stamp object.
Parameters
- $alpha : float
A value between 0 and 1, whereas 1 is defined as 100% opacity
- $blendMode : string
A blend mode defined in PDF 32000-1:2008 - 11.3.5, "Blend Mode"
Exceptions
Throws \InvalidArgumentException
setOptionalContentGroup()
Set the optional content group for this stamp.
Parameters
- $optionalContentGroup : ?\SetaPDF_Core_Document_OptionalContent_Group
setPageNumber()
Set the page number for the page which should be used for the stamp appearance.
Parameters
- $pageNumber : int
The page number
setVisibility()
Set the visibility of the stamp object.
This method controls the visibility of the stamp object on screen view and/or printer output.
Parameters
- $visibility : ?string
Use the constants VISIBILITY_XXX or null(equal to VISIBILITY_ALL)
Exceptions
Throws \InvalidArgumentException
stamp()
Stamp this stamp object onto a page.
Parameters
- $document : \SetaPDF_Core_Document
The document object
- $page : \SetaPDF_Core_Document_Page
The page object
- $stampData : array
The stampData array
Exceptions
Throws \setasign\SetaPDF2\Core\SecHandler\Exception