THotPDF.EnableFontSubsetting

THotPDF

 

プロパティ  FontEmbedding  PDF Filter Support

Controls whether embedded fonts are reduced to the glyphs used by the current document.

 

Delphi syntax:

property EnableFontSubsetting: Boolean;

 

C++ syntax:

__property bool EnableFontSubsetting;

 

説明

埋め込みフォントデータを削減するには BeginDoc の前に EnableFontSubsetting を true に設定します。HotPDF は TrueType フォントと OpenType-CFF フォント (name-keyed Latin OTF と CID-keyed CJK / Indic / Arabic OTF の両方) をサブセット化し、既存の Type0 / Identity-H テキスト出力が有効なままになるよう glyph ID を保持します

 

このプロパティは既定でオフです。生成後に編集される可能性があるドキュメントで完全なフォント埋め込みを保持するためです。最終 PDF 出力では、サブセット化を有効にするとファイルサイズを大幅に削減できます。特に Adobe Fan/Gothic/Heiti/Ming/Myungjo/Song Std、Kozuka Pr6N、Source Han Sans などの大きな CJK CID-keyed OpenType-CFF フォントでは、通常 18000+ CID のうちごく一部だけがドキュメントごとに使用されます

 

サブセットフォントが書き込まれるとき、HotPDF は PDF が要求する 6 文字の subset prefix を /BaseFont に使用し、埋め込みフォントプログラムと解決済み PostScript 名の内部整合性を保ちます

 

PDF/A では埋め込み TrueType サブセットがさらに圧縮されます。保持されたグリフは密な範囲に振り直され、宣言されるグリフ数はドキュメントが実際に使うグリフ数へ減らされ、CIDFontType2 が決して参照しない GID インデックスのテーブル(cmap、GPOS、GSUB、hdmx、kern)は削除されます。その上で、変更されないページコンテンツを振り直されたプログラムへマップする明示的な /CIDToGIDMap ストリームが付きます。これにより Latin のサブセットは日常的に数キロバイトまで縮みます。一方、PDF/A 以外の出力はグリフ ID を保持するサブセットのままなので、ファイルは編集可能な状態を保ちます。PDF/A 以外でもコンパクトサブセットにするには CompactFontSubsetting を設定してください

 

関連項目: CompactFontSubsetting, FontEmbedding, CFF and OpenType Font Subsetting Functions, PDF Filter Support