int XmbTextExtents(font_set, string, num_bytes, overall_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_return) XFontSet font_set; wchar_t *string; int num_wchars; XRectangle *overall_ink_return; XRectangle *overall_logical_return;
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
non-descending, 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, 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 XFontSet has missing charsets, metrics for each unavailable character are taken from the default string returned by XCreateFontSet so that the metrics represent the text as it will actually be drawn. The behavior for an invalid codepoint is undefined.