Package org.docx4j.fonts.fop.fonts
Class CIDFull
java.lang.Object
org.docx4j.fonts.fop.fonts.CIDFull
- All Implemented Interfaces:
CIDSet
public class CIDFull extends java.lang.Object implements CIDSet
Provides methods to get font information.
Naming:
glyph index: original index of the glyph in the non-subset font (!= unicode index)
character selector: index into a set of glyphs. For subset CID fonts, this starts at 0. For non-subset
fonts, this is the same as the glyph index.
Unicode index: The Unicode codepoint of a character.
Glyph name: the Adobe glyph name (as found in Glyphs.java)
-
Constructor Summary
Constructors Constructor Description CIDFull(MultiByteFont mbf) -
Method Summary
Modifier and Type Method Description char[]getChars()Returns a char array containing all Unicode characters that are in the subset.intgetGIDFromChar(char ch)Returns the glyph index from the original font from a characterjava.util.BitSetgetGlyphIndices()Returns a BitSet with bits set for each available glyph index in the subset.java.util.Map<java.lang.Integer,java.lang.Integer>getGlyphs()Returns an unmodifiable Map of the font subset.intgetNumberOfGlyphs()Returns the number of glyphs in the subset.intgetOriginalGlyphIndex(int index)Returns the original index of the glyph inside the (non-subset) font's glyph list.intgetUnicode(int index)Returns the Unicode value for a subset index (character selector).chargetUnicodeFromGID(int glyphIndex)Gets the unicode character from the original font glyph indexint[]getWidths()Return the array of widths.intmapChar(int glyphIndex, char unicode)Maps a character to a character selector for a font subset.intmapCodePoint(int glyphIndex, int codePoint)Maps a character to a character selector for a font subset.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
CIDFull
-
-
Method Details
-
getOriginalGlyphIndex
public int getOriginalGlyphIndex(int index)Returns the original index of the glyph inside the (non-subset) font's glyph list. This index can be used to access the character width information, for example.- Specified by:
getOriginalGlyphIndexin interfaceCIDSet- Parameters:
index- the subset index (character selector) to access the glyph- Returns:
- the original index (or -1 if no glyph index is available for the subset index)
-
getUnicodeFromGID
public char getUnicodeFromGID(int glyphIndex)Gets the unicode character from the original font glyph index- Specified by:
getUnicodeFromGIDin interfaceCIDSet- Parameters:
glyphIndex- The original glyph index of the character in the font- Returns:
- The character represented by the passed GID
-
getGIDFromChar
public int getGIDFromChar(char ch)Returns the glyph index from the original font from a character- Specified by:
getGIDFromCharin interfaceCIDSet- Parameters:
ch- The character- Returns:
- The glyph index in the original font.
-
getUnicode
public int getUnicode(int index)Returns the Unicode value for a subset index (character selector). If there's no such Unicode value, the "NOT A CHARACTER" (0xFFFF) is returned.- Specified by:
getUnicodein interfaceCIDSet- Parameters:
index- the subset index (character selector)- Returns:
- the Unicode value or "NOT A CHARACTER" (0xFFFF)
-
mapChar
public int mapChar(int glyphIndex, char unicode)Maps a character to a character selector for a font subset. If the character isn't in the subset, yet, it is added and a new character selector returned. Otherwise, the already allocated character selector is returned from the existing map/subset. -
mapCodePoint
public int mapCodePoint(int glyphIndex, int codePoint)Maps a character to a character selector for a font subset. If the character isn't in the subset yet, it is added and a new character selector returned. Otherwise, the already allocated character selector is returned from the existing map/subset.- Specified by:
mapCodePointin interfaceCIDSet- Parameters:
glyphIndex- the glyph index of the charactercodePoint- the Unicode index of the character- Returns:
- the subset index
-
getGlyphs
public java.util.Map<java.lang.Integer,java.lang.Integer> getGlyphs()Returns an unmodifiable Map of the font subset. It maps from glyph index to character selector (i.e. the subset index in this case). -
getChars
public char[] getChars()Returns a char array containing all Unicode characters that are in the subset. -
getNumberOfGlyphs
public int getNumberOfGlyphs()Returns the number of glyphs in the subset.- Specified by:
getNumberOfGlyphsin interfaceCIDSet- Returns:
- the number of glyphs in the subset
-
getGlyphIndices
public java.util.BitSet getGlyphIndices()Returns a BitSet with bits set for each available glyph index in the subset.- Specified by:
getGlyphIndicesin interfaceCIDSet- Returns:
- a BitSet indicating available glyph indices
-
getWidths
public int[] getWidths()Return the array of widths.This is used to get an array for inserting in an output format. It should not be used for lookup.
-