NAME
XmbDrawText, XwcDrawText, Xutf8DrawText - draw text using multiple font
sets
SYNTAX
void XmbDrawText(Display *display, Drawable d, GC gc, int x, int y,
XmbTextItem *items, int nitems);
void XwcDrawText(Display *display, Drawable d, GC gc, int x, int y,
XwcTextItem *items, int nitems);
void Xutf8DrawText(Display *display, Drawable d, GC gc, int x, int y,
XmbTextItem *items, int nitems);
ARGUMENTS
d Specifies the drawable.
display Specifies the connection to the X server.
gc Specifies the GC.
items Specifies an array of text items.
nitems Specifies the number of text items in the array.
x
y Specify the x and y coordinates.
DESCRIPTION
The XmbDrawText, XwcDrawText and Xutf8DrawText functions allow complex
spacing and font set shifts between text strings. Each text item is
processed in turn, with the origin of a text element advanced in the
primary draw direction by the escapement of the previous text item. A
text item delta specifies an additional escapement of the text item
drawing origin in the primary draw direction. A font_set member other
than None in an item causes the font set to be used for this and
subsequent text items in the text_items list. Leading text items with
a font_set member set to None will not be drawn.
XmbDrawText, XwcDrawText and Xutf8DrawText do not perform any context-
dependent rendering between text segments. Clients may compute the
drawing metrics by passing each text segment to XmbTextExtents,
XwcTextExtents, Xutf8TextExtents or XmbTextPerCharExtents,
XwcTextPerCharExtents. Xutf8TextPerCharExtents. When the XFontSet has
missing charsets, each unavailable character is drawn with the default
string returned by XCreateFontSet. The behavior for an invalid
codepoint is undefined.
The function Xutf8DrawText 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.
STRUCTURES
The XmbTextItem structure contains:
typedef struct {
char *chars; /* pointer to string */
int nchars; /* number of bytes */
int delta; /* pixel delta between strings */
XFontSet font_set; /* fonts, None means don’t change */
} XmbTextItem;
The XwcTextItem structure contains:
wchar_t *chars; /* pointer to wide char string */
int nchars; /* number of wide characters */
int delta; /* pixel delta between strings */
XFontSet font_set; /* fonts, None means don’t change */
} XwcTextItem;
SEE ALSO
XDrawImageString(3), XDrawString(3), XDrawText(3),
XmbDrawImageString(3), XmbDrawString(3)
Xlib - C Language X Interface