Package org.apache.fop.fonts.truetype
Class GlyfTable
- java.lang.Object
-
- org.apache.fop.fonts.truetype.GlyfTable
-
public class GlyfTable extends java.lang.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 Summary
Fields Modifier and Type Field Description protected java.util.Set<java.lang.Integer>
composedGlyphs
All the glyphs that are composed, but do not appear in the subset.protected java.util.Map<java.lang.Integer,java.lang.Integer>
subset
-
Constructor Summary
Constructors Constructor Description GlyfTable(FontFileReader in, OFMtxEntry[] metrics, OFDirTabEntry dirTableEntry, java.util.Map<java.lang.Integer,java.lang.Integer> glyphs)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addAllComposedGlyphsToSubset()
Adds to the subset, all the glyphs that are composed by a glyph, but do not appear themselves in the subset.boolean
isComposite(int indexInOriginal)
protected void
populateGlyphsWithComposites()
Populates the map of subset glyphs with all the glyphs that compose the glyphs in the subset.java.util.Set<java.lang.Integer>
retrieveComposedGlyphs(int indexInOriginal)
Reads a composite glyph at a given index and retrieves all the glyph indices of contingent composed glyphs.
-
-
-
Constructor Detail
-
GlyfTable
public GlyfTable(FontFileReader in, OFMtxEntry[] metrics, OFDirTabEntry dirTableEntry, java.util.Map<java.lang.Integer,java.lang.Integer> glyphs) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
populateGlyphsWithComposites
protected void populateGlyphsWithComposites() throws java.io.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:
java.io.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 java.io.IOException
- Throws:
java.io.IOException
-
retrieveComposedGlyphs
public java.util.Set<java.lang.Integer> retrieveComposedGlyphs(int indexInOriginal) throws java.io.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:
java.io.IOException
- an I/O error
-
-