Package com.itextpdf.io.font.otf
Class Glyph
java.lang.Object
com.itextpdf.io.font.otf.Glyph
- Direct Known Subclasses:
GidAwareGlyph
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) short
private int[]
private char[]
private final int
private final boolean
private static final char
private static final String
private static final char[]
private int
private final int
(package private) short
(package private) short
(package private) short
(package private) short
-
Constructor Summary
ConstructorsConstructorDescriptionGlyph
(int width, int unicode) Construct a non-mark Glyph object with id -1 and characters retrieved from unicode.Glyph
(int code, int width, char[] chars) Construct a non-mark Glyph, using the codepoint of the characters as unicode point.Glyph
(int code, int width, int unicode) Construct a non-mark Glyph, retrieving characters from unicode.Glyph
(int code, int width, int unicode, char[] chars, boolean IsMark) Construct a glyph object form the passed arguments.Glyph
(int code, int width, int unicode, int[] bbox) Construct a non-mark Glyph, retrieving characters from unicode.Copy a Glyph.Copy a glyph and assign the copied glyph a new unicode point and charactersCopy a Glyph and assign new placement and advance offsets and a new index delta to base glyph -
Method Summary
Modifier and TypeMethodDescriptionprivate static int
codePoint
(char[] a) boolean
Two Glyphs are equal if their unicode characters, code and normalized width are equal.short
int[]
getBbox()
char[]
getChars()
private static char[]
getChars
(int unicode) int
getCode()
int
char[]
Gets Unicode char sequence corresponding to this glyph.Gets a Unicode string corresponding to this glyph.int
getWidth()
short
short
short
short
boolean
int
hashCode()
boolean
boolean
boolean
boolean
isMark()
void
setAnchorDelta
(short anchorDelta) void
setChars
(char[] chars) void
setUnicode
(int unicode) void
setXAdvance
(short xAdvance) void
setXPlacement
(short xPlacement) void
setYAdvance
(short yAdvance) void
setYPlacement
(short yPlacement) private static String
toHex
(int ch) toString()
-
Field Details
-
REPLACEMENT_CHARACTER
private static final char REPLACEMENT_CHARACTER- See Also:
-
REPLACEMENT_CHARACTERS
private static final char[] REPLACEMENT_CHARACTERS -
REPLACEMENT_CHARACTER_STRING
-
code
private final int code -
width
private final int width -
bbox
private int[] bbox -
unicode
private int unicode -
chars
private char[] chars -
isMark
private final boolean isMark -
xPlacement
short xPlacement -
yPlacement
short yPlacement -
xAdvance
short xAdvance -
yAdvance
short yAdvance -
anchorDelta
short anchorDelta
-
-
Constructor Details
-
Glyph
public Glyph(int code, int width, int unicode) Construct a non-mark Glyph, retrieving characters from unicode.- Parameters:
code
- code representation of the glyph in the font filewidth
- normalized width of the glyphunicode
- utf-32 representation of glyph if appears. Correct value is > -1
-
Glyph
public Glyph(int code, int width, char[] chars) Construct a non-mark Glyph, using the codepoint of the characters as unicode point.- Parameters:
code
- code representation of the glyph in the font filewidth
- normalized width of the glyphchars
- The Unicode text represented by this Glyph.
-
Glyph
public Glyph(int code, int width, int unicode, int[] bbox) Construct a non-mark Glyph, retrieving characters from unicode.- Parameters:
code
- code representation of the glyph in the font filewidth
- normalized width of the glyphunicode
- utf-32 representation of glyph if appears. Correct value is > -1bbox
- The normalized bounding box of this Glyph.
-
Glyph
public Glyph(int width, int unicode) Construct a non-mark Glyph object with id -1 and characters retrieved from unicode.- Parameters:
width
- normalized width of the glyphunicode
- utf-32 representation of glyph if appears. Correct value is > -1
-
Glyph
public Glyph(int code, int width, int unicode, char[] chars, boolean IsMark) Construct a glyph object form the passed arguments.- Parameters:
code
- code representation of the glyph in the font filewidth
- normalized width of the glyphunicode
- utf-32 representation of glyph if appears. Correct value is > -1chars
- The Unicode text represented by this Glyph. if null is passed, the unicode value is used to retrieve the chars.IsMark
- True if the glyph is a Mark
-
Glyph
Copy a Glyph.- Parameters:
glyph
- Glyph to copy
-
Glyph
public Glyph(Glyph glyph, int xPlacement, int yPlacement, int xAdvance, int yAdvance, int anchorDelta) Copy a Glyph and assign new placement and advance offsets and a new index delta to base glyph- Parameters:
glyph
- Glyph to copyxPlacement
- x - placement offsetyPlacement
- y - placement offsetxAdvance
- x - advance offsetyAdvance
- y - advance offsetanchorDelta
- Index delta to base glyph. If after a glyph there are several anchored glyphs we should know we to find base glyph.
-
Glyph
Copy a glyph and assign the copied glyph a new unicode point and characters- Parameters:
glyph
- glyph to copyunicode
- new unicode point
-
-
Method Details
-
getCode
public int getCode() -
getWidth
public int getWidth() -
getBbox
public int[] getBbox() -
hasValidUnicode
public boolean hasValidUnicode() -
getUnicode
public int getUnicode() -
setUnicode
public void setUnicode(int unicode) -
getChars
public char[] getChars() -
setChars
public void setChars(char[] chars) -
isMark
public boolean isMark() -
getXPlacement
public short getXPlacement() -
setXPlacement
public void setXPlacement(short xPlacement) -
getYPlacement
public short getYPlacement() -
setYPlacement
public void setYPlacement(short yPlacement) -
getXAdvance
public short getXAdvance() -
setXAdvance
public void setXAdvance(short xAdvance) -
getYAdvance
public short getYAdvance() -
setYAdvance
public void setYAdvance(short yAdvance) -
getAnchorDelta
public short getAnchorDelta() -
setAnchorDelta
public void setAnchorDelta(short anchorDelta) -
hasOffsets
public boolean hasOffsets() -
hasPlacement
public boolean hasPlacement() -
hasAdvance
public boolean hasAdvance() -
hashCode
public int hashCode() -
equals
Two Glyphs are equal if their unicode characters, code and normalized width are equal. -
getUnicodeString
Gets a Unicode string corresponding to this glyph. In general case it might consist of many characters. If this glyph does not have a valid unicode (hasValidUnicode()
), then a string consisting of a special Unicode '�' character is returned.- Returns:
- the Unicode string that corresponds to this glyph
-
getUnicodeChars
public char[] getUnicodeChars()Gets Unicode char sequence corresponding to this glyph. In general case it might consist of many characters. If this glyph does not have a valid unicode (hasValidUnicode()
), then a special Unicode '�' character is returned.- Returns:
- the Unicode char sequence that corresponds to this glyph
-
toString
-
toHex
-
codePoint
private static int codePoint(char[] a) -
getChars
private static char[] getChars(int unicode)
-