Class FontMetrics

All Implemented Interfaces:
PointerInterface

public class FontMetrics extends Record
A `PangoFontMetrics` structure holds the overall metric information
for a font.

The information in a `PangoFontMetrics` structure may be restricted
to a script. The fields of this structure are private to implementations
of a font backend. See the documentation of the corresponding getters
for documentation of their meaning.

For an overview of the most important metrics, see:

<picture>
<source srcset="fontmetrics-dark.png" media="(prefers-color-scheme: dark)">
<img alt="Font metrics" src="fontmetrics-light.png">
</picture>

https://docs.gtk.org/Pango/struct.FontMetrics.html

  • Field Details

  • Constructor Details

    • FontMetrics

      public FontMetrics(PointerContainer pointer)
    • FontMetrics

      public FontMetrics()
  • Method Details

    • getClassHandler

      public static ClassHandler getClassHandler()
    • getFieldRefCount

      public int getFieldRefCount()
    • getFieldAscent

      public int getFieldAscent()
    • getFieldDescent

      public int getFieldDescent()
    • getFieldHeight

      public int getFieldHeight()
    • getFieldApproximateCharWidth

      public int getFieldApproximateCharWidth()
    • getFieldApproximateDigitWidth

      public int getFieldApproximateDigitWidth()
    • getFieldUnderlinePosition

      public int getFieldUnderlinePosition()
    • getFieldUnderlineThickness

      public int getFieldUnderlineThickness()
    • getFieldStrikethroughPosition

      public int getFieldStrikethroughPosition()
    • getFieldStrikethroughThickness

      public int getFieldStrikethroughThickness()
    • getApproximateCharWidth

      public int getApproximateCharWidth()
      Gets the approximate character width for a font metrics structure.

      This is merely a representative value useful, for example, for
      determining the initial size for a window. Actual characters in
      text will be wider and narrower than this.
      Returns:
      the character width, in Pango units.
    • getApproximateDigitWidth

      public int getApproximateDigitWidth()
      Gets the approximate digit width for a font metrics structure.

      This is merely a representative value useful, for example, for
      determining the initial size for a window. Actual digits in
      text can be wider or narrower than this, though this value
      is generally somewhat more accurate than the result of
      pango_font_metrics_get_approximate_char_width() for digits.
      Returns:
      the digit width, in Pango units.
    • getAscent

      public int getAscent()
      Gets the ascent from a font metrics structure.

      The ascent is the distance from the baseline to the logical top
      of a line of text. (The logical top may be above or below the top
      of the actual drawn ink. It is necessary to lay out the text to
      figure where the ink will be.)
      Returns:
      the ascent, in Pango units.
    • getDescent

      public int getDescent()
      Gets the descent from a font metrics structure.

      The descent is the distance from the baseline to the logical bottom
      of a line of text. (The logical bottom may be above or below the
      bottom of the actual drawn ink. It is necessary to lay out the text
      to figure where the ink will be.)
      Returns:
      the descent, in Pango units.
    • getHeight

      public int getHeight()
      Gets the line height from a font metrics structure.

      The line height is the recommended distance between successive
      baselines in wrapped text using this font.

      If the line height is not available, 0 is returned.
      Returns:
      the height, in Pango units
    • getStrikethroughPosition

      public int getStrikethroughPosition()
      Gets the suggested position to draw the strikethrough.

      The value returned is the distance *above* the
      baseline of the top of the strikethrough.
      Returns:
      the suggested strikethrough position, in Pango units.
    • getStrikethroughThickness

      public int getStrikethroughThickness()
      Gets the suggested thickness to draw for the strikethrough.
      Returns:
      the suggested strikethrough thickness, in Pango units.
    • getUnderlinePosition

      public int getUnderlinePosition()
      Gets the suggested position to draw the underline.

      The value returned is the distance *above* the baseline of the top
      of the underline. Since most fonts have underline positions beneath
      the baseline, this value is typically negative.
      Returns:
      the suggested underline position, in Pango units.
    • getUnderlineThickness

      public int getUnderlineThickness()
      Gets the suggested thickness to draw for the underline.
      Returns:
      the suggested underline thickness, in Pango units.
    • ref

      public FontMetrics ref()
      Increase the reference count of a font metrics structure by one.
      Returns:
      @metrics
    • unref

      public void unref()
      Decrease the reference count of a font metrics structure by one.

      If the result is zero, frees the structure and any associated memory.
    • getTypeID

      public static long getTypeID()
    • getParentTypeID

      public static long getParentTypeID()
    • getTypeSize

      public static TypeSystem.TypeSize getTypeSize()
    • getParentTypeSize

      public static TypeSystem.TypeSize getParentTypeSize()
    • getInstanceSize

      public static int getInstanceSize()