Funksjoner for CFF- og OpenType-fontunderinndeling

PDF Filter Support

 

Øverst  EnableFontSubsetting  Innhold

Disse funksjonene på unit-nivå eksponerer den offentlige CFF-, OpenType-CFF- og sfnt-flaten for fontinspeksjon som brukes av HotPDFs innebygde fontpipeline. HotPDF leverer også gjenbrukbare Type 1 PFB- og CFF-parserunits for kallere som trenger fontinspeksjon på lavere nivå

 

Delphi-syntaks

function HPDFSubsetCFF(const CFFBytes: TBytes; const KeepGlyph: array of Boolean): TBytes;

function HPDFSfntIsOTF(const Data: TBytes): Boolean;

function HPDFOTFFindCFFTable(const Data: TBytes; out TableOff: Cardinal; out TableLen: Cardinal): Boolean;

function HPDFSubsetOTFContainer(const OTFBytes: TBytes; const KeepGlyph: array of Boolean): TBytes;

function HPDFExtractTTFPostScriptName(const Data: TBytes): AnsiString;

 

Beskrivelse

HPDFSubsetCFF skriver en CFF-fontlast om på stedet, bevarer glyph-ID-er og erstatter ubrukt CharStrings og subrutiner med minimale stubber. Dette er hjelperen for kallere som allerede har hentet ut en CFF-tabell fra en fontbeholder

 

HPDFSfntIsOTF oppdager en sfnt-beholder der versjonen er OTTO. HPDFOTFFindCFFTable finner den innebygde 'CFF '-tabellen. HPDFSubsetOTFContainer kombinerer disse stegene ved å underinndele den innebygde CFF-tabellen og returnere en OTF-beholder med det opprinnelige sfnt-tabelloppsettet bevart. HPDFExtractTTFPostScriptName leser navn-ID 6 fra sfnt-name-tabellen og returnerer PostScript-fontnavnet når det finnes

 

Underinndelingsverktøyet gjenkjenner både navnebasert CFF (én Private DICT, én Local Subr INDEX) og CID-basert CFF (Top DICT ROS-operator, FDArray med flere subfont Private DICT-er, FDSelect glyph-til-FD-kart, per-FD Local Subr INDEX-er). CID-støtten dekker CJK / Indic / arabiske OpenType-CFF-fonter; lukkeanalysen følger FD-konteksten for hver beholdt CharString, slik at Local Subr INDEX-er per FD underinndeles uavhengig

 

De lavere CFF-heltallsdekoderne, FDArray / FDSelect-parsere og subrutineskannere er implementasjonsdetaljer bak denne offentlige hjelperflaten

 

Type 1- og CFF-parserenheter

HPDFType1Core, HPDFType1Glyphs, HPDFType1CFFHandler og HPDFType1PFBHandler gir gjenbrukbare bytearray-lesere, uttrekk av Type 1-glyphkonturer, parsing av CFF Header / INDEX / dictionary / charset / encoding, samt Type 1 PFB-metadata og hjelpefunksjoner for glyph-oppslag. HPDFType1CB gir et parserinngangspunkt som passer for C++Builder. Enhetene er inkludert i Delphi- og C++Builder-pakkeprosjektene slik at applikasjoner kan inspisere Type 1 PFB- og CFF-data uten å implementere binærparserne på nytt

 

Se også: EnableFontSubsetting, FontEmbedding, PDF Filter Support