Package org.apache.fop.fonts
Class CIDFull
java.lang.Object
org.apache.fop.fonts.CIDFull
- All Implemented Interfaces:
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
-
Method Summary
Modifier and TypeMethodDescriptionchar[]
getChars()
Returns a char array containing all Unicode characters that are in the subset.int
getGIDFromChar
(char ch) Returns the glyph index from the original font from a characterReturns a BitSet with bits set for each available glyph index in the subset.Returns an unmodifiable Map of the font subset.int
Returns the number of glyphs in the subset.int
getOriginalGlyphIndex
(int index) Returns the original index of the glyph inside the (non-subset) font's glyph list.int
getUnicode
(int index) Returns the Unicode value for a subset index (character selector).char
getUnicodeFromGID
(int glyphIndex) Gets the unicode character from the original font glyph indexint[]
Return the array of widths.int
mapChar
(int glyphIndex, char unicode) Maps a character to a character selector for a font subset.int
mapCodePoint
(int glyphIndex, int codePoint) Maps a character to a character selector for a font subset.
-
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:
getOriginalGlyphIndex
in 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:
getUnicodeFromGID
in 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:
getGIDFromChar
in 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:
getUnicode
in 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:
mapCodePoint
in interfaceCIDSet
- Parameters:
glyphIndex
- the glyph index of the charactercodePoint
- the Unicode index of the character- Returns:
- the subset index
-
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:
getNumberOfGlyphs
in interfaceCIDSet
- Returns:
- the number of glyphs in the subset
-
getGlyphIndices
Returns a BitSet with bits set for each available glyph index in the subset.- Specified by:
getGlyphIndices
in 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.
-