THotPDF.CompactFontSubsetting

THotPDF

 

Eigenschappen  EnableFontSubsetting  FontEmbedding

Bepaalt of fontsubsets de behouden glyfen hernummeren, wat ze een stuk kleiner maakt

 

Delphi syntax:

property CompactFontSubsetting: Boolean;

 

C++ syntax:

__property bool CompactFontSubsetting;

 

Beschrijving

Zet CompactFontSubsetting vóór BeginDoc op true om compacte fontsubsets te bouwen. Een gewone subset behoudt de glyfnummering van het bronfont: ongebruikte glyfen worden leeggemaakt, maar het font declareert nog steeds elke glyf en heeft voor elke glyf een locatie- en breedte-entry. Bij een CJK-font met 20.000 tot 30.000 glyfen kosten die tabellen alleen al ruim 200 KB vóór compressie, ook als de pagina twee tekens toont

 

Een compacte subset hernummert de behouden glyfen naar een dicht bereik en bouwt de glyftabellen alleen daarvoor opnieuw op. De paginacontent toont de oorspronkelijke glyfnummers nog steeds als CIDs, en een expliciete /CIDToGIDMap-stream (ISO 32000-1 9.7.4.2) beeldt die af op de hernummerde glyfen, zodat tekst, breedtes en tekstextractie onveranderd blijven. Twee Chinese tekens in SimSun kosten in een gewone subset zo'n 25 KB aan fontgegevens en in een compacte subset zo'n 3 KB

 

De eigenschap geldt voor TrueType-fonts die als Type 0-fonts worden weggeschreven, wanneer EnableFontSubsetting aan staat, en voor het font dat met RegisterUnicodeTTF is geregistreerd, dat altijd een subset krijgt. OpenType-CFF-fonts houden de gewone subset. Kan er voor een font geen compacte subset gebouwd worden, dan valt HotPDF terug op de gewone subset

 

De eigenschap staat standaard uit, dus bestaande uitvoer verandert niet. Onder PDF/A krijgt het geregistreerde font altijd een compacte subset. Een compacte subset past het beste bij definitieve uitvoer: tekst die later met hetzelfde font aan het document wordt toegevoegd heeft een nieuwe subset nodig, en later samengevoegde documenten kunnen de subset van hetzelfde font niet delen

 

Zie ook: EnableFontSubsetting, FontEmbedding, RegisterUnicodeTTF