public class LazyFont extends Typeface implements FontDescriptor, Substitutable, Positionable
eventListener, NOT_FOUND| Constructor and Description |
|---|
LazyFont(EmbedFontInfo fontInfo,
InternalResourceResolver resourceResolver,
boolean useComplexScripts)
Main constructor
|
| Modifier and Type | Method and Description |
|---|---|
int |
getAscender()
Returns the ascender value of the font.
|
int |
getAscender(int size)
Returns the ascent of the font described by this
FontMetrics object.
|
java.awt.Rectangle |
getBoundingBox(int glyphIndex,
int size)
Returns the bounding box of the glyph at the given index, for the given font size.
|
int |
getCapHeight()
Returns the capital height of the font.
|
int |
getCapHeight(int size)
Returns the size of a capital letter measured from the font's baseline.
|
int |
getDescender()
Returns the descender value of the font.
|
int |
getDescender(int size)
Returns the descent of the font described by this
FontMetrics object.
|
java.lang.String |
getEmbedFontName()
Returns the font name for font embedding (may include a prefix, Example: "1E28bcArialMT").
|
java.lang.String |
getEncodingName()
Get the encoding of the font.
|
java.util.Set<java.lang.String> |
getFamilyNames()
Returns the font's family names as a Set of Strings (Example: "Helvetica").
|
int |
getFlags()
Returns the flags for the font.
|
int[] |
getFontBBox()
Returns the font's bounding box.
|
java.lang.String |
getFontName()
Returns the "PostScript" font name (Example: "Helvetica-BoldOblique").
|
FontType |
getFontType()
Returns the type of the font.
|
java.net.URI |
getFontURI()
Returns the URI of the font file from which these metrics were loaded.
|
java.lang.String |
getFullName()
Returns the font's full name (Example: "Helvetica Bold Oblique").
|
int |
getItalicAngle()
Returns the italic angle for the font.
|
java.util.Map<java.lang.Integer,java.util.Map<java.lang.Integer,java.lang.Integer>> |
getKerningInfo()
Returns the kerning map for the font.
|
int |
getMaxAscent(int size)
Returns the maximum ascent of the font described by this
FontMetrics object.
|
Typeface |
getRealFont()
Gets the real font.
|
int |
getStemV()
Returns the vertical stem width for the font.
|
int |
getStrikeoutPosition(int size)
Returns the distance from the baseline to the center of the strikeout line
(negative value indicates below baseline).
|
int |
getStrikeoutThickness(int size)
Returns the thickness of the strikeout line.
|
int |
getUnderlinePosition(int size)
Returns the distance from the baseline to the center of the underline (negative
value indicates below baseline).
|
int |
getUnderlineThickness(int size)
Returns the thickness of the underline.
|
int |
getWidth(int i,
int size)
Return the width (in 1/1000ths of point size) of the character at
code point i.
|
int[] |
getWidths()
Return the array of widths.
|
int |
getXHeight(int size)
Determines the typical font height of this
FontMetrics object
|
boolean |
hadMappingOperations()
Indicates whether this font had to do any character mapping operations.
|
boolean |
hasChar(char c)
Determines whether this font contains a particular character/glyph.
|
boolean |
hasFeature(int tableType,
java.lang.String script,
java.lang.String language,
java.lang.String feature)
Determine if metrics supports specific feature in specified font table.
|
boolean |
hasKerningInfo()
Indicates if the font has kerning information.
|
boolean |
isEmbeddable()
Indicates if this font may be embedded.
|
boolean |
isMultiByte()
Determines whether the font is a multibyte font.
|
boolean |
isSubsetEmbedded()
Indicates whether this font is subset embedded.
|
boolean |
isSymbolicFont()
Indicates whether the font is a symbolic font.
|
char |
mapChar(char c)
Map a Unicode character to a code point in the font.
|
int[][] |
performPositioning(java.lang.CharSequence cs,
java.lang.String script,
java.lang.String language)
Perform glyph positioning using an implied font size.
|
int[][] |
performPositioning(java.lang.CharSequence cs,
java.lang.String script,
java.lang.String language,
int fontSize)
Perform glyph positioning.
|
boolean |
performsPositioning()
Determines if font performs glyph positioning.
|
boolean |
performsSubstitution()
Determines if font performs glyph substitution.
|
java.lang.CharSequence |
performSubstitution(java.lang.CharSequence cs,
java.lang.String script,
java.lang.String language,
java.util.List associations,
boolean retainControls)
Perform substitutions on characters to effect glyph substitution.
|
java.lang.CharSequence |
reorderCombiningMarks(java.lang.CharSequence cs,
int[][] gpa,
java.lang.String script,
java.lang.String language,
java.util.List associations)
Reorder combining marks in character sequence so that they precede (within the sequence) the base
character to which they are applied.
|
java.lang.String |
toString() |
isCID, notifyMapOperation, setEventListener, warnMissingGlyphpublic LazyFont(EmbedFontInfo fontInfo, InternalResourceResolver resourceResolver, boolean useComplexScripts)
fontInfo - the font info to embedresourceResolver - the font resolver to handle font URIspublic Typeface getRealFont()
public java.lang.String getEncodingName()
getEncodingName in class Typefacepublic char mapChar(char c)
public boolean hadMappingOperations()
hadMappingOperations in class Typefacepublic boolean hasChar(char c)
public boolean isMultiByte()
isMultiByte in interface FontMetricsisMultiByte in class Typefacepublic java.net.URI getFontURI()
getFontURI in interface FontMetricspublic java.lang.String getFontName()
getFontName in interface FontMetricspublic java.lang.String getEmbedFontName()
getEmbedFontName in interface FontMetricspublic java.lang.String getFullName()
getFullName in interface FontMetricspublic java.util.Set<java.lang.String> getFamilyNames()
getFamilyNames in interface FontMetricspublic int getMaxAscent(int size)
getMaxAscent in interface FontMetricsgetMaxAscent in class Typefacesize - font sizepublic int getAscender(int size)
getAscender in interface FontMetricssize - font sizepublic int getCapHeight(int size)
getCapHeight in interface FontMetricssize - font sizepublic int getDescender(int size)
getDescender in interface FontMetricssize - font sizepublic int getXHeight(int size)
getXHeight in interface FontMetricssize - font sizepublic int getUnderlinePosition(int size)
FontMetricsgetUnderlinePosition in interface FontMetricssize - font sizepublic int getUnderlineThickness(int size)
FontMetricsgetUnderlineThickness in interface FontMetricssize - font sizepublic int getStrikeoutPosition(int size)
FontMetricsgetStrikeoutPosition in interface FontMetricssize - font sizepublic int getStrikeoutThickness(int size)
FontMetricsgetStrikeoutThickness in interface FontMetricssize - font sizepublic int getWidth(int i,
int size)
getWidth in interface FontMetricsi - code point indexsize - font sizepublic int[] getWidths()
This is used to get an array for inserting in an output format. It should not be used for lookup.
getWidths in interface FontMetricspublic java.awt.Rectangle getBoundingBox(int glyphIndex,
int size)
FontMetricsgetBoundingBox in interface FontMetricsglyphIndex - glyph indexsize - font sizepublic boolean hasKerningInfo()
hasKerningInfo in interface FontMetricspublic java.util.Map<java.lang.Integer,java.util.Map<java.lang.Integer,java.lang.Integer>> getKerningInfo()
getKerningInfo in interface FontMetricspublic boolean hasFeature(int tableType,
java.lang.String script,
java.lang.String language,
java.lang.String feature)
hasFeature in interface FontMetricshasFeature in class TypefacetableType - type of table (GSUB, GPOS, ...), see GlyphTable.GLYPH_TABLE_TYPE_*script - to qualify feature lookuplanguage - to qualify feature lookupfeature - to testpublic int getCapHeight()
getCapHeight in interface FontDescriptorpublic int getDescender()
getDescender in interface FontDescriptorpublic int getAscender()
getAscender in interface FontDescriptorpublic int getFlags()
getFlags in interface FontDescriptorpublic boolean isSymbolicFont()
isSymbolicFont in interface FontDescriptorpublic int[] getFontBBox()
getFontBBox in interface FontDescriptorpublic int getItalicAngle()
getItalicAngle in interface FontDescriptorpublic int getStemV()
getStemV in interface FontDescriptorpublic FontType getFontType()
getFontType in interface FontMetricspublic boolean isEmbeddable()
isEmbeddable in interface FontDescriptorpublic boolean performsSubstitution()
performsSubstitution in interface Substitutablepublic java.lang.CharSequence performSubstitution(java.lang.CharSequence cs,
java.lang.String script,
java.lang.String language,
java.util.List associations,
boolean retainControls)
performSubstitution in interface Substitutablecs - character sequence to map to output font encoding character sequencescript - a script identifierlanguage - a language identifierassociations - optional list to receive list of character associationsretainControls - if true, then retain control characters and their glyph mappings, otherwise removepublic java.lang.CharSequence reorderCombiningMarks(java.lang.CharSequence cs,
int[][] gpa,
java.lang.String script,
java.lang.String language,
java.util.List associations)
reorderCombiningMarks in interface Substitutablecs - character sequence within which combining marks to be reorderedgpa - associated glyph position adjustments (also reordered)script - a script identifierlanguage - a language identifierassociations - optional list of associations to be reorderedpublic boolean performsPositioning()
performsPositioning in interface Positionablepublic int[][] performPositioning(java.lang.CharSequence cs,
java.lang.String script,
java.lang.String language,
int fontSize)
performPositioning in interface Positionablecs - character sequence to map to position offsets (advancement adjustments)script - a script identifierlanguage - a language identifierfontSize - font sizepublic int[][] performPositioning(java.lang.CharSequence cs,
java.lang.String script,
java.lang.String language)
performPositioning in interface Positionablecs - character sequence to map to position offsets (advancement adjustments)script - a script identifierlanguage - a language identifierpublic boolean isSubsetEmbedded()
isSubsetEmbedded in interface FontDescriptorCopyright 1999-2022 The Apache Software Foundation. All Rights Reserved.