XmbTextExtents(3X11)

NAME
XmbTextExtents, XwcTextExtents, Xutf8TextExtents - compute text extents

SYNTAX
int XmbTextExtents(font_set, string, num_bytes, overall_ink_return, overall_logical_return)
      XFontSet font_set;
      char *string;
      int num_bytes;
      XRectangle *overall_ink_return;
      XRectangle *overall_logical_return;

int XwcTextExtents(font_set, string, num_wchars, overall_ink_return, overall_logical_return)
      XFontSet font_set;
      wchar_t *string;
      int num_wchars;
      XRectangle *overall_ink_return;
      XRectangle *overall_logical_return;

int Xutf8TextExtents(font_set, string, num_bytes, overall_ink_return, overall_logical_return)
      XFontSet font_set;
      char *string;
      int num_bytes;
      XRectangle *overall_ink_return;
      XRectangle *overall_logical_return;

ARGUMENTS

font_set
    Specifies the font set.

num_bytes
    Specifies the number of bytes in the string argument.

num_wchars
    Specifies the number of characters in the string argument.

overall_ink_return
    Returns the overall ink dimensions.

overall_logical_return
    Returns the overall logical dimensions.

string
    Specifies the character string.

DESCRIPTION
The and functions set the components of the specified overall_ink_return and overall_logical_return arguments to the overall bounding box of the string's image and a logical bounding box for spacing purposes, respectively. They return the value returned by or These metrics are relative to the drawing origin of the string, using the fonts loaded for the specified font set.

If the overall_ink_return argument is non-NULL, it is set to the bounding box of the string's character ink. The overall_ink_return for a nondescending, horizontally drawn Latin character is conventionally entirely above the baseline; that is, overall_ink_return.height <= -overall_ink_return.y. The overall_ink_return for a nonkerned character is entirely at, and to the right of, the origin; that is, overall_ink_return.x >= 0. A character consisting of a single pixel at the origin would set overall_ink_return fields y = 0, x = 0, width = 1, and height = 1.

If the overall_logical_return argument is non-NULL, it is set to the bounding box that provides minimum spacing to other graphical features for the string. Other graphical features, for example, a border surrounding the text, should not intersect this rectangle.

When the has missing charsets, metrics for each unavailable character are taken from the default string returned by so that the metrics represent the text as it will actually be drawn. The behavior for an invalid codepoint is undefined.

The function is an XFree86 extension introduced in XFree86 4.0.2. Its presence is indicated by the macro

SEE ALSO
XmbTextEscapement(3X11), XmbTextPerCharExtents(3X11) Xlib - C Language X Interface