Table of Contents
XListFonts, XFreeFontNames,
XListFontsWithInfo, XFreeFontInfo - obtain or free font names and information
- char **XListFonts(Display *display, char *pattern, int
- maxnames,
int *actual_count_return);
- int XFreeFontNames(char *list[]);
- char **XListFontsWithInfo(Display
*display, char *pattern,
- int maxnames, int *count_return, XFontStruct **info_return);
- int XFreeFontInfo(char **names, XFontStruct *free_info, int
- actual_count);
- actual_count
- Specifies the actual number of font names.
- actual_count_return
- Returns
the actual number of font names.
- count_return
- Returns the actual number of
matched font names.
- display
- Specifies the connection to the X server.
- info_return
- Returns
the font information.
- free_info
- Specifies the font information.
- list
- Specifies
the array of strings you want to free.
- maxnames
- Specifies the maximum number
of names to be returned.
- names
- Specifies the list of font names.
- pattern
- Specifies
the null-terminated pattern string that can contain wildcard characters.
The XListFonts function returns an array of available font
names (as controlled by the font search path; see XSetFontPath) that
match the string you passed to the pattern argument. The pattern string
can contain any characters, but each asterisk (*) is a wildcard for any
number of characters, and each question mark (?) is a wildcard for a single
character. If the pattern string is not in the Host Portable Character Encoding,
the result is implementation-dependent. Use of uppercase or lowercase does
not matter. Each returned string is null-terminated. If the data returned
by the server is in the Latin Portable Character Encoding, then the returned
strings are in the Host Portable Character Encoding. Otherwise, the result
is implementation-dependent. If there are no matching font names, XListFonts
returns NULL. The client should call XFreeFontNames when finished with
the result to free the memory.
The XFreeFontNames function frees the array
and strings returned by XListFonts or XListFontsWithInfo.
The XListFontsWithInfo
function returns a list of font names that match the specified pattern
and their associated font information. The list of names is limited to size
specified by maxnames. The information returned for each font is identical
to what XLoadQueryFont would return except that the per-character metrics
are not returned. The pattern string can contain any characters, but each
asterisk (*) is a wildcard for any number of characters, and each question
mark (?) is a wildcard for a single character. If the pattern string is
not in the Host Portable Character Encoding, the result is implementation-dependent.
Use of uppercase or lowercase does not matter. Each returned string is null-terminated.
If the data returned by the server is in the Latin Portable Character Encoding,
then the returned strings are in the Host Portable Character Encoding. Otherwise,
the result is implementation-dependent. If there are no matching font names,
XListFontsWithInfo returns NULL.
To free only the allocated name array,
the client should call XFreeFontNames. To free both the name array and
the font information array or to free just the font information array,
the client should call XFreeFontInfo.
The XFreeFontInfo function frees
a font structure or an array of font structures and optionally an array
of font names. If NULL is passed for names, no font names are freed. If a
font structure for an open font (returned by XLoadQueryFont) is passed,
the structure is freed, but the font is not closed; use XUnloadFont to
close the font.
Note that XListFontsWithInfo is not thread-safe. If other
threads make X requests on the same Display, then this function's behavior
is undefined.
XLoadFont(3)
, XSetFontPath(3)
Xlib - C Language X Interface
Table of Contents