SetaPDF_Core_Type_Stream Class representing a stream object
File: /SetaPDF v2/Core/Type/Stream.php
Class hierarchy
Implements
- SetaPDF_Core_Canvas_StreamProxyInterface
- SetaPDF_Core_Type_BypassSecHandlerInterface
- SetaPDF_Core_WriteInterface
- SplObserver
- SplSubject
Summary
Methods
- __construct()
- __sleep()
- _applyFilter()
- _decrypt()
- _preProcess()
- appendStream()
- attach()
- cleanUp()
- clear()
- deepClone()
- detach()
- detachAll()
- ensure()
- getStream()
- getValue()
- hasCryptFilter()
- isObserved()
- notify()
- setBypassSecHandler()
- setStream()
- setValue()
- toPdfString()
- toPhp()
- unfilterStream()
- update()
- write()
- writeTo()
Properties
$_observers
The Objects to notify on any change
This will be the PDF document or another value holding this one. Initially this will be an array.
$_unfilteredStream
The unfiltered stream content
Static Methods
_ensureType()
Ensure that a value is an instance of a specific PDF type.
Parameters
- $type : string
- $value : mixed
- $errorMessage : string
- $ensure
Exceptions
Throws SetaPDF_Core_Type_Exception
ensureType()
Ensures that the passed value is a SetaPDF_Core_Type_Stream instance.
Parameters
- $stream : mixed
Exceptions
Throws SetaPDF_Core_Type_Exception
ensureWithType()
Ensures that the passed value is an instance of the passed type.
Parameters
- $type : string
- $value : mixed
Exceptions
Throws SetaPDF_Core_Type_Exception
is()
Checks if the type of a value is the expected one.
Indirect references will be evaluated if $ensure
is set to true
.
Parameters
- $type : string
- $value : mixed
- $ensure : bool
writePdfString()
Parses a php value to a pdf string and writes it into a writer.
PHP data type -> PDF data type
Null -> SetaPDF_Core_Type_Null
Boolean -> SetaPDF_Core_Type_Boolean
Integer/Double -> SetaPDF_Core_Type_Numeric
String -> SetaPDF_Core_Type_String or SetaPDF_Core_Type_Name(if the string starts with "/")
Indexed array -> SetaPDF_Core_Type_Array
Associative array -> SetaPDF_Core_Type_Dictionary
Parameters
- $writer : SetaPDF_Core_WriteInterface
- $value : mixed
Exceptions
Throws InvalidArgumentException
Methods
__construct()
The constructor.
Parameters
- $value : SetaPDF_Core_Type_Dictionary
- $stream : string
- $owningObject : SetaPDF_Core_Type_IndirectObject
__sleep()
Implementation of __sleep.
We remove the observers from all elements because they will get read if they are waked up in an observed object.
_applyFilter()
Applies filter to the stream.
Parameters
- $stream : string
- $encode : boolean
- $pdfDocument : SetaPDF_Core_Document
The document, on which the stream will get used. This value is only needed for a crypt filter (to be implemented!)
Exceptions
Throws SetaPDF_Exception
_preProcess()
Pre-Process the stream for the output in a specific PDF document.
Parameters
- $pdfDocument : SetaPDF_Core_Document
attach()
Add an observer to the object.
Implementation of the Observer Pattern.
Parameters
- $observer : SplObserver
deepClone()
Clone the object recursively in the context of a document.
Parameters
- $document : SetaPDF_Core_Document
detach()
Detach an observer from the object.
Implementation of the Observer Pattern.
Parameters
- $observer : SplObserver
ensure()
Returns the main value.
This method is used for automatically resolving of indirect references.
Parameters
- $forceObservation : bool|null
notify()
Notifies all attached observers.
Implementation of the Observer Pattern.
Has to be called by any method that changes a value.
setValue()
Set the PDF dictionary for this stream object.
Parameters
- $value : SetaPDF_Core_Type_Dictionary
The value
Exceptions
Throws InvalidArgumentException
See
toPdfString()
Returns the type as a formatted PDF string.
Parameters
- $pdfDocument : SetaPDF_Core_Document
update()
Triggered if a value of this object is changed. Forward this to the object.
Parameters
- $SplSubject : SplSubject
writeTo()
Writes the type as a formatted PDF string to the document.
Parameters
- $pdfDocument : SetaPDF_Core_Document