SetaPDF_Core_Type_String Class representing a string

File: /SetaPDF v2/Core/Type/String.php

Class hierarchy

Implements

Summary

Properties

$_bypassSecHandler

protected boolean SetaPDF_Core_Type_String::$_bypassSecHandler = false

Flag indicating that the object should bypass the security handler

$_encrypted

protected boolean SetaPDF_Core_Type_String::$_encrypted = false

Flag saying that the stream is encrypted or not

$_observed

Defines if this object is under observation

$_observers

protected array SetaPDF_Core_Type_AbstractType::$_observers = array()

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.

$_owningObject

The original owning object.

Needed if the string is encrypted

$_rawValue

protected string SetaPDF_Core_Type_String::$_rawValue = ''

The escaped/encrypted value

$_value

protected string SetaPDF_Core_Type_String::$_value = ''

The plaintext value


Static Methods

_ensureType()

protected static SetaPDF_Core_Type_AbstractType::_ensureType (
string $type, mixed $value, string $errorMessage [, $ensure = true ]
): mixed

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_String instance.

Parameters
$string : 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

escape()

public static SetaPDF_Core_Type_String::escape (
string $s
): string

Escapes sequences in a string according to the PDF specification.

Parameters
$s : string
 

is()

public static SetaPDF_Core_Type_AbstractType::is (
string $type, mixed $value [, bool $ensure = true ]
): bool

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
 

unescape()

public static SetaPDF_Core_Type_String::unescape (
string $s
): string

Unescapes escaped sequences in a PDF string according to the PDF specification.

Parameters
$s : string
 

writePdfString()

public static SetaPDF_Core_Type_String::writePdfString (
SetaPDF_Core_WriteInterface $writer, string|mixed $value
): void

Parses a php string value to a pdf string and write it into a writer.

Parameters
$writer : SetaPDF_Core_WriteInterface
 
$value : string|mixed

If it's not a string, it need to have a __toString() implementation.

Exceptions

Throws InvalidArgumentException

See

Methods

__construct()

public SetaPDF_Core_Type_String::__construct (
[ string $value = '' [, boolean $raw = false [, SetaPDF_Core_Type_IndirectObject $owningObject = null ]]]
)

The constructor.

Parameters
$value : string
 
$raw : boolean
 
$owningObject : SetaPDF_Core_Type_IndirectObject
 

__clone()

Implementation of __clone().

__sleep()

public SetaPDF_Core_Type_AbstractType::__sleep (
void
): array

Implementation of __sleep.

We remove the observers from all elements because they will get read if they are waked up in an observed object.

_decrypt()

protected SetaPDF_Core_Type_String::_decrypt (
void
): string

Decrypts the string (if needed).

attach()

Add an observer to the object.

Implementation of the Observer Pattern.

Parameters
$observer : SplObserver
 

cleanUp()

public SetaPDF_Core_Type_String::cleanUp (
void
): void

Release objects/memory.

See

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
 

detachAll()

Detach all observers from this object.

Be careful with this method!!!

ensure()

public SetaPDF_Core_Type_AbstractType::ensure (
[ bool|null $forceObservation = null ]
): SetaPDF_Core_Type_AbstractType

Returns the main value.

This method is used for automatically resolving of indirect references.

Parameters
$forceObservation : bool|null
 

getValue()

public SetaPDF_Core_Type_String::getValue (
void
): string

Get the string value.

See

isObserved()

Checks if this object is observed.

notify()

public SetaPDF_Core_Type_AbstractType::notify (
void
): void

Notifies all attached observers.

Implementation of the Observer Pattern.

Has to be called by any method that changes a value.

setBypassSecHandler()

public SetaPDF_Core_Type_String::setBypassSecHandler (
[ boolean $bypassSecHandler = true ]
): void

Set the bypass security handler flag.

Parameters
$bypassSecHandler : boolean
 

setValue()

public SetaPDF_Core_Type_String::setValue (
string $value
): void

Set the string value.

Parameters
$value : string
 
See

toPdfString()

public SetaPDF_Core_Type_String::toPdfString (
[ SetaPDF_Core_Document|null $pdfDocument = null ]
): string

Returns the type as a formatted PDF string.

Parameters
$pdfDocument : SetaPDF_Core_Document|null
 

toPhp()

public SetaPDF_Core_Type_String::toPhp (
void
): string

Converts the PDF data type to a PHP data type and returns it.

writeTo()

Writes the type as a formatted PDF string to the document.

Parameters
$pdfDocument : SetaPDF_Core_Document