setasign\SetaPDF2\Core\Font
Type0 Class for Type0 fonts
File: /SetaPDF v2/Core/Font/Type0.php
Old class name (alias):
\SetaPDF_Core_Font_Type0
Class hierarchy
Implements
- DescriptorInterface
- FontInterface
- Glyph\Collection\CollectionInterface
- \setasign\SetaPDF2\Core\Resource\ResourceInterface
Summary
Methods
- __construct()
- _ensureUnderlinePosition()
- _ensureUnderlineThickness()
- _getEncodingTable()
- getAscent()
- getAvgWidth()
- getCharByCharCode()
- getCharCode()
- getCharCodes()
- getCharsByCharCodes()
- getDescendantFont()
- getDictionary()
- getFontBBox()
- getFontBBoxVector()
- getFontDescriptor()
- getFontFamily()
- getFontName()
- getGlyphWidthByCharCode()
- getGlyphsWidth()
- getIndirectObject()
- getInfo()
- getItalicAngle()
- getMaxWidth()
- getMissingWidth()
- getResourceType()
- getStreamParser()
- getType()
- getUnderlinePosition()
- getUnderlineThickness()
- isBold()
- isItalic()
- isMonospace()
- recalculateFontBBox()
- setUnderlinePosition()
- setUnderlineThickness()
- splitCharCodes()
Constants
INFO_COPYRIGHT
Info constant
INFO_CREATION_DATE
Info constant
INFO_UNIQUE_ID
Info constant
INFO_VERSION
Info constant
TYPE_COLOR_SPACE
Type constant
TYPE_EXT_G_STATE
Type constant
TYPE_FONT
Type constant
TYPE_PATTERN
Type constant
TYPE_PROC_SET
Type constant
TYPE_PROPERTIES
Type constant
TYPE_SHADING
Type constant
TYPE_X_OBJECT
Type constant
Properties
$_avgWidth
The average width of glyphs in the font.
$_calculatedFontBBox
$_charCodeCache
A char code cache which is used in Font::getCharByCharCode().
$_dictionary
The font dictionary
$_encodingTable
$_fontBBox
The font bounding box
$_streamParser
The TTF/OTF parser of the embedded font file.
$_substituteCharacter
The substitute character in a fonts specific encoding.
$_underlinePosition
The relative underline positioning.
$_underlineThickness
The underline thickness.
$_widthsByCharCode
Widths by char codes
Static Methods
freeCache()
WARNING: This method is marked as deprecated!
Call \setasign\SetaPDF2\Core\Document::clearCache() with the type \setasign\SetaPDF2\Core\Document::CACHE_FONT instead.
Release font instances by a document instance.
Parameters
- $document : \SetaPDF_Core_Document
freeFontCache()
WARNING: This method is marked as deprecated!
Release font instances by a document instance.
Parameters
- $document : \SetaPDF_Core_Document
See
get()
Get a font object by an indirect reference.
The needed font object class is automatically resolve via the Subtype value of the font dictionary.
Parameters
- $indirectObjectOrDictionary : \SetaPDF_Core_Type_IndirectObjectInterface|\SetaPDF_Core_Type_Dictionary
Exceptions
Throws \setasign\SetaPDF2\NotImplementedException
Throws Exception
Throws \setasign\SetaPDF2\Core\Type\IndirectReference\Exception
Methods
__construct()
The constructor.
Parameters
- $indirectObjectOrDictionary : \SetaPDF_Core_Type_IndirectObjectInterface|\SetaPDF_Core_Type_Dictionary
Exceptions
_ensureUnderlinePosition()
Calculates the underline position.
This method is only used if no underline thickness is provided by the font implementation (e.g. through an already embedded font). We simply use the font bounding box to calculate a meaningful value.
_ensureUnderlineThickness()
Calculates the underline thickness.
This method is only used if no underline thickness is provided by the font implementation (e.g. through an already embedded font).
_getEncodingTable()
Get the CMaps table for this font.
Exceptions
Throws Exception
Throws \setasign\SetaPDF2\Core\Type\Exception
Throws \setasign\SetaPDF2\Core\Type\IndirectReference\Exception
getAscent()
Returns the distance from baseline of highest ascender (Typographic ascent).
Exceptions
Throws Exception
getAvgWidth()
Get the average glyph width.
Parameters
- $calculateIfUndefined : bool
Exceptions
Throws Exception
getCharByCharCode()
Converts a char code from the font specific encoding to another encoding.
Parameters
- $charCode : string
The char code in the font specific encoding.
- $encoding : string
The resulting encoding
getCharCode()
Get the final character code of a single character.
Parameters
- $char : string
The character
- $encoding : string
The output encoding
getCharCodes()
Get the final character codes of a character string.
Parameters
- $chars : string
The character string
- $encoding : string
The output encoding
getCharsByCharCodes()
string $encoding = 'UTF-8',
bool $asArray = true
Converts char codes from the font specific encoding to another encoding.
Parameters
- $charCodes : string
The char codes in the font specific encoding.
- $encoding : string
The resulting encoding
- $asArray : bool
Exceptions
Throws Exception
Throws \setasign\SetaPDF2\Core\Type\Exception
Throws \setasign\SetaPDF2\Core\Type\IndirectReference\Exception
getDescendantFont()
Get the descendant font.
Exceptions
Throws \setasign\SetaPDF2\NotImplementedException
Throws Exception
getFontBBox()
Returns the font bounding box.
Exceptions
Throws Exception
getFontBBoxVector()
Get a font bounding box vector.
Parameters
- $name : int
- $fontSize : float
Exceptions
getFontDescriptor()
Get the font descriptor object.
Exceptions
Throws Exception
getFontFamily()
getGlyphWidthByCharCode()
Get the width of a glpyh by its char code.
Parameters
- $charCode : string
Exceptions
Throws Exception
Throws \setasign\SetaPDF2\Core\Type\Exception
Throws \setasign\SetaPDF2\Core\Type\IndirectReference\Exception
getGlyphsWidth()
Get the width of the glyphs/characters.
Parameters
- $chars : string
The characters
- $encoding : string
The input encoding
getIndirectObject()
Gets an indirect object for this font.
Parameters
- $document : ?\SetaPDF_Core_Document
Exceptions
Throws \InvalidArgumentException
See
getItalicAngle()
getMaxWidth()
getMissingWidth()
Get the missing glyph width.
Exceptions
Throws Exception
getStreamParser()
Get the TTF/OTF parser for the embedded font programm.
Exceptions
Throws \setasign\SetaPDF2\Core\Exception
Throws Exception
isBold()
Checks if the font is bold.
Exceptions
Throws Exception
isItalic()
Checks if the font is italic.
Exceptions
Throws Exception
isMonospace()
Checks if the font is monospace.
Exceptions
Throws Exception
recalculateFontBBox()
Exceptions
Throws \setasign\SetaPDF2\Core\Exception
Throws Exception
setUnderlinePosition()
Sets the underline position for the current font.
Parameters
- $position : int|float
setUnderlineThickness()
Sets the underline thickness for the current font.
Parameters
- $thickness : int|float
splitCharCodes()
Split a string of char codes into single char codes.
Parameters
- $charCodes : string
Exceptions
Throws Exception
Throws \setasign\SetaPDF2\Core\Type\Exception
Throws \setasign\SetaPDF2\Core\Type\IndirectReference\Exception