|
Funktioner för delmängder av CFF- och OpenType-teckensnitt
|
Överst EnableFontSubsetting Innehåll |
|
Dessa funktioner på enhetsnivå exponerar den offentliga ytan för inspektion och delmängdshantering av CFF-, OpenType-CFF- och sfnt-teckensnitt som används av HotPDF:s pipeline för inbäddade teckensnitt. HotPDF levererar också återanvändbara parserenheter för Type 1 PFB och CFF för anropare som behöver teckensnittsinspektion på lägre nivå
Delphi-syntax 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;
Beskrivning HPDFSubsetCFF skriver om en CFF-teckensnittslast på plats, bevarar glyph ID och ersätter oanvända CharStrings och subrutiner med minimala stubbar. Det är hjälpen för anropare som redan har extraherat en CFF-tabell från en teckensnittsbehållare
HPDFSfntIsOTF identifierar en sfnt-behållare vars version är OTTO. HPDFOTFFindCFFTable hittar den inbäddade tabellen 'CFF '. HPDFSubsetOTFContainer kombinerar dessa steg genom att skapa en delmängd av den inbäddade CFF-tabellen och returnera en OTF-behållare där den ursprungliga sfnt-tabellayouten bevaras. HPDFExtractTTFPostScriptName läser name ID 6 från sfnt-tabellen
Delmängdsfunktionen känner igen både namnnycklad CFF (en enda Private DICT, ett enda Local Subr INDEX) och CID-nycklad CFF (Top DICT ROS-operator, FDArray med flera Private DICT för delteckensnitt, FDSelect glyph-to-FD-karta, Local Subr INDEXes per FD). CID-stöd omfattar CJK / Indic / Arabic OpenType-CFF-teckensnitt; closure-skanningen spårar varje behållen CharStrings FD-kontext så att Local Subr INDEXes per FD delmängdas oberoende
De underliggande CFF-heltalsavkodarna, FDArray / FDSelect-parsrarna och subrutinskannrarna är implementeringsdetaljer bakom denna offentliga hjälpyta
Parserenheter för Type 1 och CFF
Se även: EnableFontSubsetting, FontEmbedding, PDF Filter Support |