NAME
XLoadQueryFont − load a font and fill information structure.
Synopsis
XFontStruct *XLoadQueryFont(display, name)
Display *display;
char *name;
Arguments
displaySpecifies a connection to an X server; returned from XOpenDisplay().
nameSpecifies the name of the font. This name is a null terminated string. As of Release 4, the * and ? wildcards are allowed and may be supported by the server. Upper or lower case is not important. If the font name is not in the Host Portable Character Encoding, the result is implementation-dependent.
Description
XLoadQueryFont() performs an XLoadFont() and XQueryFont() in a single operation. XLoadQueryFont() provides the easiest way to get character-size tables for placing a proportional font. That is, XLoadQueryFont() both opens (loads) the specified font and returns a pointer to the appropriate XFontStruct structure. If the font does not exist, XLoadQueryFont() returns NULL. The XFontStruct structure consists of the font-specific information and a pointer to an array of XCharStruct structures for each character in the font. For more information on fonts, see Volume One, Chapter 6, Drawing Graphics and Text.
Errors
BadAllocserver has insufficient memory to store font. name specifies an unavailable font.
Structures
typedef struct {
XExtData *ext_data;/* hook for extension to hang data */
Font fid;/* Font ID for this font */
unsigned direction;/* hint about direction the 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 nonzero 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;/* minimum 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;
typedef struct {
short lbearing;/* origin to left edge of character */
short rbearing;/* origin to right edge of character */
short width;/* advance to next char’s origin */
short ascent;/* baseline to top edge of character */
short descent;/* baseline to bottom edge of character */
unsigned short attributes;/* per char flags (not predefined) */
} XCharStruct;
See Also
XCreateFontCursor(), XFreeFont(), XFreeFontInfo(), XFreeFontPath(), XGetFontPath(), XGetFontProperty(), XListFonts(), XListFontsWithInfo(), XLoadFont(), XQueryFont(), XSetFont(), XSetFontPath(), XUnloadFont().
Copyright O’Reilly & Assoc. —