class final Core · roukmoute/pdf 0.6.1
PDF\Document\Fonts\CIDFontType2Table 117: repertoire-bound or independently normalized Type 2 CID font, with vertical metrics.Inheritance and contracts
Parent : PDF\Document\Fonts\ManagedFontDictionary
Interfaces : Countable, IteratorAggregate, PDF\Document\VersionedComponent, PDF\Syntax\FileStructure\BasicType, Stringable, Traversable
Definition in the specification
Table 117 · Entries in a CIDFont dictionary
ISO 32000-1:2008, §9.7.4.1 · PDF page 277 ↗
| Entry | PDF type | Source requirement | Table |
|---|---|---|---|
/Type | name | Required | 117 |
/Subtype | name | Required | 117 |
/BaseFont | name | Required | 117 |
/CIDSystemInfo | dictionary | Required | 117 |
/FontDescriptor | dictionary | Required; shall be an indirect reference | 117 |
/DW | integer | Optional | 117 |
/W | array | Optional | 117 |
/DW2 | array | Optional; applies only to CIDFonts used for vertical writing | 117 |
/W2 | array | Optional; applies only to CIDFonts used for vertical writing | 117 |
/CIDToGIDMap | stream or name | Optional; Type 2 CIDFonts only | 117 |
Conditional descriptions remain traceable. A definition alone does not implement a codec, a signature or every format mechanism. Read the coverage.
Construction
__construct()
public function __construct(PDF\Document\Fonts\FontDescriptor $descriptor, PDF\Document\Fonts\CIDToGIDMap|PDF\Document\Fonts\CIDGlyphIndexMap|PDF\Document\Fonts\CIDIdentityGlyphMap|null $glyphMap, PDF\Document\Fonts\CIDWidths|PDF\Document\Fonts\CIDMetrics $widths, PDF\Syntax\Object\DictionaryObject\Entry|PDF\Document\Fonts\CIDVerticalMetrics|PDF\Document\Fonts\CMaps\CMapSystemInfo ...$entries)Declared methods
validateVersion()
public function validateVersion(PDF\Syntax\FileStructure\EffectivePdfVersion $version): voidInherited methods
12 methods from parents and contracts
__toString()
public function __toString(): stringassertUnmanaged()
protected function assertUnmanaged(string $key): voidcount()
public function count(): intdefinition()
public function definition(): PDF\Specification\TableDefinitionentries()
public function entries(): iterable@return iterable<Entry>get()
public function get(PDF\Syntax\Object\NameType|string $key): ?PDF\Syntax\FileStructure\BasicTypegetIterator()
public function getIterator(): Traversablehas()
public function has(PDF\Syntax\Object\NameType|string $key): booltoPdf()
public function toPdf(PDF\Serialization\SerializationContext $context): stringvalidate()
public function validate(): voidChecks unconditional requirements; conditional and inherited rules remain explicit.with()
public function with(PDF\Syntax\Object\DictionaryObject\Entry $entry): staticwithout()
public function without(PDF\Syntax\Object\NameType|string $key): staticProperties
| Declaration | Origin and documentation |
|---|---|
public readonly PDF\Document\Fonts\FontDescriptor $descriptor | PDF\Document\Fonts\CIDFontType2 |
public readonly ?PDF\Document\Fonts\CharacterMap $map | PDF\Document\Fonts\CIDFontType2 |
public readonly PDF\Document\Fonts\CMaps\CMapSystemInfo $systemInfo | PDF\Document\Fonts\CIDFontType2 |
Constants
| Name | PHP value | Origin |
|---|---|---|
COMMON_TABLES | | PDF\Specification\SchemaDictionary |
TABLE | | PDF\Document\Fonts\CIDFontType2 |