XQueryFont()XQueryFont()NameXQueryFont – return information about a loaded font.
Synopsis
XFontStruct *XQueryFont(display, font_ID)
Display *display;
XID font_ID;
Arguments
display Specifies a connection to an X server; returned from
XOpenDisplay().
font_ID Specifies either the font ID or the graphics context ID. You
can declare the data type for this argument as either Font or
GContext (both X IDs). If GContext, the font in that GC will
be queried.
Returns
The font information structure.
DescriptionXQueryFont() returns a pointer to an XFontStruct structure containing
information describing the specified font. This call is needed if you
loaded the font with XLoadFont(), but need the font information to
determine the extent of text. XLoadQueryFont() combines these two
operations. XQueryTextExtents() is an alternative to avoid getting the
complete font information, if you need the extents of only a few
strings.
If the font hasn't been loaded (or the font ID passed is invalid),
XQueryFont() returns NULL.
If font_ID is declared as data type GContext (also a resource ID), this
function queries the font specified by the font component of the GC
specified by this ID. This is useful for getting information about the
default font, whose ID is stored in the default GC. However, in this
case the GContext ID will be the ID stored in the fid field of the
returned XFontStruct, and you can't use that ID in XSetFont() or XUn‐
loadFont(), since it is not itself the ID of the font.
Use XFreeFont() to free this data.
For more information on fonts, see Volume One, Chapter 6, Drawing
Graphics and Text.
Errors
BadFont
Structures
typedef struct {
XExtData *ext_data; /* hook for extension to hang data */
Font fid; /* font ID for this font */
unsigned direction; /* hint about direction font is painted */
unsigned min_char_or_byte2; /* first character */
unsigned max_char_or_byte2; /* last character */
unsigned min_byte1; /* first row that exists */
unsigned max_byte1; /* last row that exists */
Bool all_chars_exist; /* flag if all characters have non-zero size*/
unsigned default_char; /* char to print for undefined character */
int n_properties; /* how many properties there are */
XFontProp *properties; /* pointer to array of additional properties*/
XCharStruct min_bounds; /* minimum bounds over all existing char*/
XCharStruct max_bounds; /* maximum bounds over all existing char*/
XCharStruct *per_char; /* first_char to last_char information */
int ascent; /* logical extent above baseline for spacing */
int descent; /* logical descent below baseline for spacing */
} XFontStruct;
See AlsoXCreateFontCursor(), XFreeFont(), XFreeFontInfo(), XFreeFontNames(),
XFreeFontPath(), XGetFontPath(), XGetFontProperty(), XListFonts(),
XListFontsWithInfo(), XLoadFont(), XLoadQueryFont(), XSetFont(), XSet‐
FontPath(), XUnloadFont().
Xlib - Fonts XQueryFont()