Table of Contents

Method RemoveUnusedGlyphs

Namespace
BitMiracle.Docotic.Pdf
Assembly
BitMiracle.Docotic.Pdf.dll

RemoveUnusedGlyphs()

Removes unused glyphs from the font.

public bool RemoveUnusedGlyphs()

Returns

bool

true if unused glyphs were successfully removed from the font; otherwise, false.

Remarks

This method might fail to remove unused glyphs in the following cases:

  • Font is not embedded. For such fonts the Embedded property is false.
  • Font is used in a PdfTextBox or PdfComboBox and therefore all font glyphs should be preserved. A PDF reader or editor might be unable to change text in a control if some glyphs are missed in the font.
  • Font is of an unsupported type. For now, only TrueType/OpenType (not CFF) fonts are supported.

This method is useful for decreasing size of produced PDF documents. The method creates a font subset with used glyphs only and embeds the subset in the current document.

A glyph is treated as used if the current document contains character drawn with the glyph.

This method does not remove unused glyphs from Type1 fonts.

Some PDF documents use a same font descriptor and font bytes in multiple fonts. In such cases, the call of this method for first font will also remove unused glyphs for all other fonts.

Exceptions

UnsupportedFontException

The font has unexpected structure. Please send us a PDF file or the font bytes for review. You can get font bytes using Save methods.