Package com.itextpdf.io.font
Class FontProgram
java.lang.Object
com.itextpdf.io.font.FontProgram
- Direct Known Subclasses:
-
CidFont
,TrueTypeFont
,Type1Font
,Type3Font
-
Field Summary
Modifier and TypeFieldDescriptionprotected int
static final int
protected String
The font's encoding name.protected FontIdentification
protected FontMetrics
protected FontNames
static final int
protected boolean
protected String
static final int
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic double
convertGlyphSpaceToTextSpace
(double value) static float
convertGlyphSpaceToTextSpace
(float value) static int
convertGlyphSpaceToTextSpace
(int value) static float
convertTextSpaceToGlyphSpace
(float value) int
protected void
int
int[]
getCharBBox
(int unicode) Get glyph's bbox.getGlyph
(int unicode) getGlyphByCode
(int charCode) int
getKerning
(int first, int second) Gets the kerning between two glyphs.abstract int
getKerning
(Glyph first, Glyph second) Gets the kerning between two glyphs.abstract int
int
getWidth
(int unicode) Get glyph's width.boolean
boolean
isBuiltWith
(String fontName) Checks whether theFontProgram
was built with corresponding fontName.boolean
protected void
setBbox
(int[] bbox) protected void
setBold
(boolean isBold) protected void
setCapHeight
(int capHeight) Sets the capital letters height.protected void
setFixedPitch
(boolean isFixedPitch) protected void
setFontFamily
(String fontFamily) Sets a preferred font family name.protected void
setFontName
(String fontName) Sets the PostScript name of the font.protected void
setFontStretch
(String fontWidth) Sets font width in css notation (font-stretch property)protected void
setFontWeight
(int fontWeight) Sets font weight.protected void
setItalicAngle
(int italicAngle) Sets the PostScript italic angle.protected void
setRegistry
(String registry) protected void
setStemH
(int stemH) protected void
setStemV
(int stemV) protected void
setTypoAscender
(int ascender) Sets typo ascender.protected void
setTypoDescender
(int descender) Sets typo descender.protected void
setXHeight
(int xHeight) toString()
-
Field Details
-
HORIZONTAL_SCALING_FACTOR
public static final int HORIZONTAL_SCALING_FACTOR- See Also:
-
DEFAULT_WIDTH
public static final int DEFAULT_WIDTH- See Also:
-
UNITS_NORMALIZATION
public static final int UNITS_NORMALIZATION- See Also:
-
codeToGlyph
-
unicodeToGlyph
-
isFontSpecific
protected boolean isFontSpecific -
fontNames
-
fontMetrics
-
fontIdentification
-
avgWidth
protected int avgWidth -
encodingScheme
The font's encoding name. This encoding is 'StandardEncoding' or 'AdobeStandardEncoding' for a font that can be totally encoded according to the characters names. For all other names the font is treated as symbolic. -
registry
-
-
Constructor Details
-
FontProgram
public FontProgram()
-
-
Method Details
-
convertTextSpaceToGlyphSpace
public static float convertTextSpaceToGlyphSpace(float value) -
convertGlyphSpaceToTextSpace
public static float convertGlyphSpaceToTextSpace(float value) -
convertGlyphSpaceToTextSpace
public static double convertGlyphSpaceToTextSpace(double value) -
convertGlyphSpaceToTextSpace
public static int convertGlyphSpaceToTextSpace(int value) -
countOfGlyphs
public int countOfGlyphs() -
getFontNames
-
getFontMetrics
-
getFontIdentification
-
getRegistry
-
getPdfFontFlags
public abstract int getPdfFontFlags() -
isFontSpecific
public boolean isFontSpecific() -
getWidth
public int getWidth(int unicode) Get glyph's width.- Parameters:
-
unicode
- a unicode symbol or FontSpecif code. - Returns:
- Gets width in normalized 1000 units.
-
getAvgWidth
public int getAvgWidth() -
getCharBBox
public int[] getCharBBox(int unicode) Get glyph's bbox.- Parameters:
-
unicode
- a unicode symbol or FontSpecif code. - Returns:
- Gets bbox in normalized 1000 units.
-
getGlyph
-
getGlyphByCode
-
hasKernPairs
public boolean hasKernPairs() -
getKerning
public int getKerning(int first, int second) Gets the kerning between two glyphs.- Parameters:
-
first
- the first unicode value -
second
- the second unicode value - Returns:
- the kerning to be applied
-
getKerning
Gets the kerning between two glyphs.- Parameters:
-
first
- the first glyph -
second
- the second glyph - Returns:
- the kerning to be applied
-
isBuiltWith
Checks whether theFontProgram
was built with corresponding fontName. Default value is false unless overridden.- Parameters:
-
fontName
- a font name or path to a font program - Returns:
- true, if the FontProgram was built with the fontProgram. Otherwise false.
-
setRegistry
-
setTypoAscender
protected void setTypoAscender(int ascender) Sets typo ascender. See alsoFontMetrics.setTypoAscender(int)
.- Parameters:
-
ascender
- typo ascender value in 1000-units
-
setTypoDescender
protected void setTypoDescender(int descender) Sets typo descender. See alsoFontMetrics.setTypoDescender(int)
.- Parameters:
-
descender
- typo descender value in 1000-units
-
setCapHeight
protected void setCapHeight(int capHeight) Sets the capital letters height. See alsoFontMetrics.setCapHeight(int)
.- Parameters:
-
capHeight
- cap height in 1000-units
-
setXHeight
protected void setXHeight(int xHeight) -
setItalicAngle
protected void setItalicAngle(int italicAngle) Sets the PostScript italic angle.Italic angle in counter-clockwise degrees from the vertical. Zero for upright text, negative for text that leans to the right (forward).
- Parameters:
-
italicAngle
- in counter-clockwise degrees from the vertical
-
setStemV
protected void setStemV(int stemV) -
setStemH
protected void setStemH(int stemH) -
setFontWeight
protected void setFontWeight(int fontWeight) Sets font weight.- Parameters:
-
fontWeight
- integer form 100 to 900. SeeFontWeights
.
-
setFontStretch
Sets font width in css notation (font-stretch property)- Parameters:
-
fontWidth
-FontStretches
.
-
setFixedPitch
protected void setFixedPitch(boolean isFixedPitch) -
setBold
protected void setBold(boolean isBold) -
setBbox
protected void setBbox(int[] bbox) -
setFontFamily
Sets a preferred font family name.- Parameters:
-
fontFamily
- a preferred font family name.
-
setFontName
Sets the PostScript name of the font.If full name is null, it will be set as well.
- Parameters:
-
fontName
- the PostScript name of the font, shall not be null or empty.
-
fixSpaceIssue
protected void fixSpaceIssue() -
toString
-