Class GlyfTable

java.lang.Object
org.apache.fop.fonts.truetype.GlyfTable

public class GlyfTable extends Object
This "glyf" table in a TrueType font file contains information that describes the glyphs. This class is responsible for creating a subset of the "glyf" table given a set of glyph indices.
  • Field Details

    • subset

      protected final Map<Integer,Integer> subset
    • compositeGlyphs

      protected Set<Integer> compositeGlyphs
      All the composite glyphs that appear in the subset.
    • composedGlyphs

      protected Set<Integer> composedGlyphs
      All the glyphs that are composed, but do not appear in the subset.
  • Constructor Details

  • Method Details

    • populateGlyphsWithComposites

      protected void populateGlyphsWithComposites() throws IOException
      Populates the map of subset glyphs with all the glyphs that compose the glyphs in the subset. This also re-maps the indices of composed glyphs to their new index in the subset font.
      Throws:
      IOException - an I/O error
    • addAllComposedGlyphsToSubset

      protected void addAllComposedGlyphsToSubset()
      Adds to the subset, all the glyphs that are composed by a glyph, but do not appear themselves in the subset.
    • isComposite

      public boolean isComposite(int indexInOriginal) throws IOException
      Throws:
      IOException
    • retrieveComposedGlyphs

      public Set<Integer> retrieveComposedGlyphs(int indexInOriginal) throws IOException
      Reads a composite glyph at a given index and retrieves all the glyph indices of contingent composed glyphs.
      Parameters:
      indexInOriginal - the glyph index of the composite glyph
      Returns:
      the set of glyph indices this glyph composes
      Throws:
      IOException - an I/O error