PdfDocument.RemoveUnusedFontGlyphs Method

Tries to remove unused glyphs from all fonts in the document.

Namespace:  BitMiracle.Docotic.Pdf
Assembly:  BitMiracle.Docotic.Pdf (in BitMiracle.Docotic.Pdf.dll)

Syntax

C#
public PdfCollection<PdfFont> RemoveUnusedFontGlyphs()
VB
Public Function RemoveUnusedFontGlyphs As PdfCollection(Of PdfFont)

Return Value

Type: PdfCollection<PdfFont>
The collection of fonts, where unused glyphs were successfully removed.

Exceptions

ExceptionCondition
UnsupportedFontException One of the fonts has unexpected structure. Please send us a PDF file for review. As a workaround, you can process individual fonts using RemoveUnusedGlyphs() method.

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 subsets with used glyphs only and embeds subsets 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.

See Also