setasign\SetaPDF2\Stamper\Stamp
RichTextStamp The rich-text stamp class
File: /SetaPDF v2/Stamper/Stamp/RichTextStamp.php
Old class name (alias):
\SetaPDF_Stamper_Stamp_RichText
With the stamp class you can add rich-text to an existing PDF document.
The text can be created by a subset of HTML and CSS style attributes.
Internally the class uses a \setasign\SetaPDF2\Core\Text\RichTextBlock object. Most methods of this class are proxy methods to the RichTextBlock instance.
Class hierarchy
Summary
Methods
- __construct()
- _cacheStampData()
- _ensureResources()
- _getOpacityGraphicState()
- _getVisibilityGroup()
- _postStamp()
- _preStamp()
- _putAction()
- _stamp()
- _stampByCache()
- getAction()
- getAlign()
- getBackgroundColor()
- getBorderColor()
- getBorderWidth()
- getDefaultFontFamily()
- getDefaultFontSize()
- getDefaultLineHeight()
- getDefaultTextColor()
- getDimensions()
- getHeight()
- getOpacity()
- getOpacityBlendMode()
- getOptionalContentGroup()
- getOriginX()
- getOriginY()
- getPaddingBottom()
- getPaddingLeft()
- getPaddingRight()
- getPaddingTop()
- getRichTextBlock()
- getText()
- getTextWidth()
- getVisibility()
- getWidth()
- setAction()
- setAlign()
- setBackgroundColor()
- setBorderColor()
- setBorderWidth()
- setDefaultFontFamily()
- setDefaultFontSize()
- setDefaultLineHeight()
- setDefaultTextColor()
- setLink()
- setOpacity()
- setOptionalContentGroup()
- setPadding()
- setPaddingBottom()
- setPaddingLeft()
- setPaddingRight()
- setPaddingTop()
- setText()
- setTextWidth()
- setVisibility()
- stamp()
- updateCacheCounter()
Constants
VISIBILITY_ALL
Visibility constant
VISIBILITY_PRINT
Visibility constant
VISIBILITY_VIEW
Visibility constant
Properties
$_action
The currently attached action object
$_dataCache
$_opacityGs
Graphic state objects for handling transparency
Array of \setasign\SetaPDF2\Core\Resource\ExtGState objects
Methods
__construct()
The constructor.
Parameters
- $document : \SetaPDF_Core_Document
- $fontLoader : ?callable
_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 content of this stamp onto the page canvas.
Parameters
- $document : \SetaPDF_Core_Document
- $page : \SetaPDF_Core_Document_Page
- $stampData : array
Exceptions
Throws \setasign\SetaPDF2\Core\Exception
Throws \setasign\SetaPDF2\Core\Font\Exception
Throws \setasign\SetaPDF2\Core\Type\Exception
Throws \setasign\SetaPDF2\Core\Type\IndirectReference\Exception
_stampByCache()
Parameters
- $document : \SetaPDF_Core_Document
- $page : \SetaPDF_Core_Document_Page
- $stampData : array
Exceptions
getDefaultTextColor()
See
getHeight()
Get the height of this stamp.
Proxy method to \setasign\SetaPDF2\Core\Text\RichTextBlock::getHeight() of the rich-text block instance.
Exceptions
Throws \setasign\SetaPDF2\Core\Exception
See
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
getRichTextBlock()
Access the rich-text block instance.
IF YOU MAKE CHANGES OUTSIDE THE STAMP CLASS, MAKE SURE THAT YOU CALL {updateCacheCounter()} AFTERWARDS.
getTextWidth()
Returns the width of the rich-text stamp without padding.
Exceptions
Throws \setasign\SetaPDF2\Core\Exception
See
getWidth()
Get the width of this stamp.
Proxy method to \setasign\SetaPDF2\Core\Text\RichTextBlock::getWidth() of the rich-text block instance.
Exceptions
Throws \setasign\SetaPDF2\Core\Exception
See
setAction()
Add an action object to the stamp object.
Parameters
- $action : \SetaPDF_Core_Document_Action
The action object
setBackgroundColor()
Set the background color.
Parameters
- $color : \SetaPDF_Core_DataStructure_Color|int|float|string|array|\SetaPDF_Core_Type_Array
See
setBorderColor()
Set the border color.
Parameters
- $color : \SetaPDF_Core_DataStructure_Color|int|float|string|array|\SetaPDF_Core_Type_Array
See
setDefaultLineHeight()
Parameters
- $lineHeight : int|float
Only unitless line-heights are supported here like 1 or 1.4
setDefaultTextColor()
Parameters
- $color : int|float|string|array|\SetaPDF_Core_Type_Array|\SetaPDF_Core_DataStructure_Color
See
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
setText()
Parameters
- $text : string
A UTF-8 string with a subset of HTML tags and CSS properties in style-parameter.
- $locale : string
INTL locale used for the break behaviour
See
setTextWidth()
Set the width of the text in the rich-text stamp. Padding is not included in this width.
Parameters
- $width : int|float
See
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