PositionedGlyphs

public final class PositionedGlyphs
extends Object

java.lang.Object
   ↳ android.graphics.text.PositionedGlyphs


Text shaping result object for single style text. You can get text shaping result by TextRunShaper#shapeTextRun(char[], int, int, int, int, float, float, boolean, Paint) and TextRunShaper#shapeTextRun(CharSequence, int, int, int, int, float, float, boolean, Paint).

Summary

Constants

float NO_OVERRIDE

A special value returned by getWeightOverride(int) and getItalicOverride(int) that indicates no font variation setting is overridden.

Public methods

boolean equals(Object o)

Indicates whether some other object is "equal to" this one.

float getAdvance()

Returns the total amount of advance consumed by this positioned glyphs.

float getAscent()

Effective ascent value of this positioned glyphs.

float getDescent()

Effective descent value of this positioned glyphs.

boolean getFakeBold(int index)

Returns true if the fake bold option used for drawing, otherwise false.

boolean getFakeItalic(int index)

Returns true if the fake italic option used for drawing, otherwise false.

Font getFont(int index)

Returns the font object used for drawing the glyph at the given index.

int getGlyphId(int index)

Returns the glyph ID used for drawing the glyph at the given index.

float getGlyphX(int index)

Returns the x coordinate of the glyph position at the given index.

float getGlyphY(int index)

Returns the y coordinate of the glyph position at the given index.

float getItalicOverride(int index)

Returns overridden italic value if the font is variable font and `ital` value is overridden for drawing.

float getOffsetX()

Returns the amount of X offset added to glyph position.

float getOffsetY()

Returns the amount of Y offset added to glyph position.

float getWeightOverride(int index)

Returns overridden weight value if the font is variable font and `wght` value is overridden for drawing.

int glyphCount()

Returns the number of glyphs stored.

int hashCode()

Returns a hash code value for the object.

String toString()

Returns a string representation of the object.

Inherited methods

Constants

NO_OVERRIDE

public static final float NO_OVERRIDE

A special value returned by getWeightOverride(int) and getItalicOverride(int) that indicates no font variation setting is overridden.

Constant Value: 1.4E-45

Public methods

equals

Added in API level 31
public boolean equals (Object o)

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
o Object: the reference object with which to compare.

Returns
boolean true if this object is the same as the obj argument; false otherwise.

getAdvance

Added in API level 31
public float getAdvance ()

Returns the total amount of advance consumed by this positioned glyphs. The advance is an amount of width consumed by the glyph. The total amount of advance is a total amount of advance consumed by this series of glyphs. In other words, if another glyph is placed next to this series of glyphs, it's X offset should be shifted this amount of width.

Returns
float total amount of advance

getAscent

Added in API level 31
public float getAscent ()

Effective ascent value of this positioned glyphs. If two or more font files are used in this series of glyphs, the effective ascent will be the minimum ascent value across the all font files.

Returns
float effective ascent value

getDescent

Added in API level 31
public float getDescent ()

Effective descent value of this positioned glyphs. If two or more font files are used in this series of glyphs, the effective descent will be the maximum descent value across the all font files.

Returns
float effective descent value

getFakeBold

public boolean getFakeBold (int index)

Returns true if the fake bold option used for drawing, otherwise false.

Parameters
index int: the glyph index Value is 0 or greater

Returns
boolean true if the fake bold option is on, otherwise off.

getFakeItalic

public boolean getFakeItalic (int index)

Returns true if the fake italic option used for drawing, otherwise false.

Parameters
index int: the glyph index Value is 0 or greater

Returns
boolean true if the fake italic option is on, otherwise off.

getFont

Added in API level 31
public Font getFont (int index)

Returns the font object used for drawing the glyph at the given index.

Parameters
index int: the glyph index Value is 0 or greater

Returns
Font the font object used for drawing the glyph at the given index This value cannot be null.

getGlyphId

Added in API level 31
public int getGlyphId (int index)

Returns the glyph ID used for drawing the glyph at the given index.

Parameters
index int: the glyph index Value is 0 or greater

Returns
int An glyph ID of the font. Value is 0 or greater

getGlyphX

Added in API level 31
public float getGlyphX (int index)

Returns the x coordinate of the glyph position at the given index.

Parameters
index int: the glyph index Value is 0 or greater

Returns
float A X offset in pixels

getGlyphY

Added in API level 31
public float getGlyphY (int index)

Returns the y coordinate of the glyph position at the given index.

Parameters
index int: the glyph index Value is 0 or greater

Returns
float A Y offset in pixels.

getItalicOverride

public float getItalicOverride (int index)

Returns overridden italic value if the font is variable font and `ital` value is overridden for drawing. Otherwise returns NO_OVERRIDE.

Parameters
index int: the glyph index Value is 0 or greater

Returns
float overridden weight value or NO_OVERRIDE.

getOffsetX

Added in API level 31
public float getOffsetX ()

Returns the amount of X offset added to glyph position.

Returns
float The X offset added to glyph position.

getOffsetY

Added in API level 31
public float getOffsetY ()

Returns the amount of Y offset added to glyph position.

Returns
float The Y offset added to glyph position.

getWeightOverride

public float getWeightOverride (int index)

Returns overridden weight value if the font is variable font and `wght` value is overridden for drawing. Otherwise returns NO_OVERRIDE.

Parameters
index int: the glyph index Value is 0 or greater

Returns
float overridden weight value or NO_OVERRIDE.

glyphCount

Added in API level 31
public int glyphCount ()

Returns the number of glyphs stored.

Returns
int the number of glyphs Value is 0 or greater

hashCode

Added in API level 31
public int hashCode ()

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

Returns
int a hash code value for this object.

toString

Added in API level 31
public String toString ()

Returns a string representation of the object.

Returns
String a string representation of the object.