NAME
XmbTextExtents, XwcTextExtents, Xutf8TextExtents - compute text extents
SYNTAX
int
XmbTextExtents(XFontSet font_set, char *string, int
num_bytes, XRectangle * overall_ink_return, XRectangle *
overall_logical_return);
int
XwcTextExtents(XFontSet font_set, wchar_t *string, int
num_wchars, XRectangle * overall_ink_return, XRectangle *
overall_logical_return);
int
Xutf8TextExtents(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
XmbTextExtents,
XwcTextExtents and
Xutf8TextExtents
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
XmbTextEscapement,
XwcTextEscapement or
Xutf8TextEscapement. 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
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.
The function
Xutf8TextExtents is an extension introduced by The XFree86
Project, Inc. in their 4.0.2 release. Its presence is indicated by the macro
X_HAVE_UTF8_STRING.
SEE ALSO
XmbTextEscapement(3), XmbTextPerCharExtents(3)
Xlib - C Language X
Interface