Class Type3Font
java.lang.Object
com.itextpdf.io.font.FontProgram
com.itextpdf.kernel.font.Type3Font
FontProgram class for Type 3 font. Contains map of
Type3Glyph.
Type3Glyphs belong to a particular pdf document.
Note, an instance of Type3Font can not be reused for multiple pdf documents.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate intprivate final Map<Integer, Type3Glyph> private final Map<Integer, Type3Glyph> Stores glyphs without associated unicode.Fields inherited from class FontProgram
avgWidth, codeToGlyph, DEFAULT_WIDTH, encodingScheme, fontIdentification, fontMetrics, fontNames, HORIZONTAL_SCALING_FACTOR, isFontSpecific, registry, unicodeToGlyph, UNITS_NORMALIZATION -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) voidaddGlyph(int code, int unicode, int width, int[] bbox, Type3Glyph type3Glyph) intgetKerning(Glyph glyph1, Glyph glyph2) Gets the kerning between two glyphs.intReturns number of glyphs for this font.intgetType3Glyph(int unicode) Returns a glyph by unicode.getType3GlyphByCode(int code) Returns a glyph by its code.booleanbooleanprivate voidprivate voidremoveGlyphFromMappings(int glyphCode) protected voidsetCapHeight(int capHeight) Sets the capital letters height.protected voidsetFontFamily(String fontFamily) Sets a preferred font family name.protected voidsetFontName(String fontName) Sets the PostScript name of the font.protected voidsetFontStretch(String fontWidth) Sets font width in css notation (font-stretch property)protected voidsetFontWeight(int fontWeight) Sets font weight.protected voidsetItalicAngle(int italicAngle) Sets the PostScript italic angle.(package private) voidsetPdfFontFlags(int flags) Sets Font descriptor flags.protected voidsetTypoAscender(int ascender) Sets typo ascender.protected voidsetTypoDescender(int descender) Sets typo descender.Methods inherited from class FontProgram
convertGlyphSpaceToTextSpace, convertGlyphSpaceToTextSpace, convertGlyphSpaceToTextSpace, convertTextSpaceToGlyphSpace, countOfGlyphs, fixSpaceIssue, getAvgWidth, getCharBBox, getFontIdentification, getFontMetrics, getFontNames, getGlyph, getGlyphByCode, getKerning, getRegistry, getWidth, hasKernPairs, isBuiltWith, setBbox, setBold, setFixedPitch, setRegistry, setStemH, setStemV, setXHeight, toString
-
Field Details
-
type3Glyphs
-
type3GlyphsWithoutUnicode
Stores glyphs without associated unicode. -
colorized
private boolean colorized -
flags
private int flags
-
-
Constructor Details
-
Type3Font
Type3Font(boolean colorized) Creates a Type 3 font program.- Parameters:
colorized- defines whether the glyph color is specified in the glyph descriptions in the font.
-
-
Method Details
-
getType3Glyph
Returns a glyph by unicode.- Parameters:
unicode- glyph unicode- Returns:
Type3Glyphglyph, ornullif this font does not contain glyph for the unicode
-
getType3GlyphByCode
Returns a glyph by its code. These glyphs may not have unicode.- Parameters:
code- glyph code- Returns:
Type3Glyphglyph, ornullif this font does not contain glyph for the code
-
getPdfFontFlags
public int getPdfFontFlags()- Specified by:
getPdfFontFlagsin classFontProgram
-
isFontSpecific
public boolean isFontSpecific()- Overrides:
isFontSpecificin classFontProgram
-
isColorized
public boolean isColorized() -
getKerning
Description copied from class:FontProgramGets the kerning between two glyphs.- Specified by:
getKerningin classFontProgram- Parameters:
glyph1- the first glyphglyph2- the second glyph- Returns:
- the kerning to be applied
-
getNumberOfGlyphs
public int getNumberOfGlyphs()Returns number of glyphs for this font. Its also count glyphs without unicode. Seetype3GlyphsWithoutUnicode.- Returns:
intnumber off all glyphs
-
setFontName
Sets the PostScript name of the font.If full name is null, it will be set as well.
- Overrides:
setFontNamein classFontProgram- Parameters:
fontName- the PostScript name of the font, shall not be null or empty.
-
setFontFamily
Sets a preferred font family name.- Overrides:
setFontFamilyin classFontProgram- Parameters:
fontFamily- a preferred font family name.
-
setFontWeight
protected void setFontWeight(int fontWeight) Sets font weight.- Overrides:
setFontWeightin classFontProgram- Parameters:
fontWeight- integer form 100 to 900. SeeFontWeights.
-
setFontStretch
Sets font width in css notation (font-stretch property)- Overrides:
setFontStretchin classFontProgram- Parameters:
fontWidth-FontStretches.
-
setCapHeight
protected void setCapHeight(int capHeight) Sets the capital letters height. See alsoFontMetrics.setCapHeight(int).- Overrides:
setCapHeightin classFontProgram- Parameters:
capHeight- cap height in 1000-units
-
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).
- Overrides:
setItalicAnglein classFontProgram- Parameters:
italicAngle- in counter-clockwise degrees from the vertical
-
setTypoAscender
protected void setTypoAscender(int ascender) Sets typo ascender. See alsoFontMetrics.setTypoAscender(int).- Overrides:
setTypoAscenderin classFontProgram- Parameters:
ascender- typo ascender value in 1000-units
-
setTypoDescender
protected void setTypoDescender(int descender) Sets typo descender. See alsoFontMetrics.setTypoDescender(int).- Overrides:
setTypoDescenderin classFontProgram- Parameters:
descender- typo descender value in 1000-units
-
setPdfFontFlags
void setPdfFontFlags(int flags) Sets Font descriptor flags.- Parameters:
flags-FontDescriptorFlags.- See Also:
-
addGlyph
-
removeGlyphFromMappings
private void removeGlyphFromMappings(int glyphCode) -
recalculateAverageWidth
private void recalculateAverageWidth()
-