Table of Contents
XmbDrawText, XwcDrawText,
Xutf8DrawText - draw text using multiple font sets
- 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);
- 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 coordinatesXy.
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.
The XmbTextItem structure
contains:
0
0>=40 .vs 0u
0<=39 .vs 0p
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:
0
0>=40 .vs 0u
0<=39 .vs 0p
typedef struct {
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;
XDrawImageString(3X11)
, XDrawString(3X11)
, XDrawText(3X11)
, XmbDrawImageString(3X11)
,
XmbDrawString(3X11)
Xlib - C Language X Interface
Table of Contents