xcb\_list\_fonts\_with\_info(3) XCB Requests xcb\_list\_fonts\_with\_info(3)

# [NAME](#NAME)

xcb\_list\_fonts\_with\_info - get matching font names and information

# [SYNOPSIS](#SYNOPSIS)

**#include &lt;xcb/xproto.h&gt;**

## [Request function](#Request_function)

xcb\_list\_fonts\_with\_info\_cookie\_t **xcb\_list\_fonts\_with\_info**(xcb\_connection\_t \**conn*, uint16\_t *max\_names*, uint16\_t *pattern\_len*, const char \**pattern*);

## [Reply datastructure](#Reply_datastructure)

```
typedef struct xcb_list_fonts_with_info_reply_t {


    uint8_t        response_type;


    uint8_t        name_len;


    uint16_t       sequence;


    uint32_t       length;


    xcb_charinfo_t min_bounds;


    uint8_t        pad0[4];


    xcb_charinfo_t max_bounds;


    uint8_t        pad1[4];


    uint16_t       min_char_or_byte2;


    uint16_t       max_char_or_byte2;


    uint16_t       default_char;


    uint16_t       properties_len;


    uint8_t        draw_direction;


    uint8_t        min_byte1;


    uint8_t        max_byte1;


    uint8_t        all_chars_exist;


    int16_t        font_ascent;


    int16_t        font_descent;


    uint32_t       replies_hint;
} xcb_list_fonts_with_info_reply_t;
```

## [Reply function](#Reply_function)

xcb\_list\_fonts\_with\_info\_reply\_t \***xcb\_list\_fonts\_with\_info\_reply**(xcb\_connection\_t \**conn*, xcb\_list\_fonts\_with\_info\_cookie\_t *cookie*, xcb\_generic\_error\_t \*\**e*);

## [Reply accessors](#Reply_accessors)

xcb\_fontprop\_t \***xcb\_list\_fonts\_with\_info\_properties**(const xcb\_list\_fonts\_with\_info\_request\_t \**reply*);

int **xcb\_list\_fonts\_with\_info\_properties\_length**(const xcb\_list\_fonts\_with\_info\_reply\_t \**reply*);

xcb\_fontprop\_iterator\_t **xcb\_list\_fonts\_with\_info\_properties\_iterator**(const xcb\_list\_fonts\_with\_info\_reply\_t \**reply*);

char \***xcb\_list\_fonts\_with\_info\_name**(const xcb\_list\_fonts\_with\_info\_request\_t \**reply*);

int **xcb\_list\_fonts\_with\_info\_name\_length**(const xcb\_list\_fonts\_with\_info\_reply\_t \**reply*);

xcb\_generic\_iterator\_t **xcb\_list\_fonts\_with\_info\_name\_end**(const xcb\_list\_fonts\_with\_info\_reply\_t \**reply*);

# [REQUEST ARGUMENTS](#REQUEST_ARGUMENTS)

[*conn*](#conn)

The XCB connection to X11.

[*max\_names*](#max_names)

The maximum number of fonts to be returned.

[*pattern\_len*](#pattern_len)

The length (in bytes) of *pattern*.

[*pattern*](#pattern)

A font pattern, for example "-misc-fixed-\*".

The asterisk (\*) is a wildcard for any number of characters. The question mark (?) is a wildcard for a single character. Use of uppercase or lowercase does not matter.

# [REPLY FIELDS](#REPLY_FIELDS)

[*response\_type*](#response_type)

The type of this reply, in this case *XCB\_LIST\_FONTS\_WITH\_INFO*. This field is also present in the *xcb\_generic\_reply\_t* and can be used to tell replies apart from each other.

[*sequence*](#sequence)

The sequence number of the last request processed by the X11 server.

[*length*](#length)

The length of the reply, in words (a word is 4 bytes).

[*name\_len*](#name_len)

The number of matched font names.

[*min\_bounds*](#min_bounds)

minimum bounds over all existing char

[*max\_bounds*](#max_bounds)

maximum bounds over all existing char

[*min\_char\_or\_byte2*](#min_char_or_byte2)

first character

[*max\_char\_or\_byte2*](#max_char_or_byte2)

last character

[*default\_char*](#default_char)

char to print for undefined character

[*properties\_len*](#properties_len)

how many properties there are

[*draw\_direction*](#draw_direction)

One of the following values:

[*XCB\_FONT\_DRAW\_LEFT\_TO\_RIGHT*](#XCB_FONT_DRAW_LEFT_TO_RIGHT)

TODO: NOT YET DOCUMENTED.

[*XCB\_FONT\_DRAW\_RIGHT\_TO\_LEFT*](#XCB_FONT_DRAW_RIGHT_TO_LEFT)

TODO: NOT YET DOCUMENTED.

[*min\_byte1*](#min_byte1)

TODO: NOT YET DOCUMENTED.

[*max\_byte1*](#max_byte1)

TODO: NOT YET DOCUMENTED.

[*all\_chars\_exist*](#all_chars_exist)

flag if all characters have nonzero size

[*font\_ascent*](#font_ascent)

baseline to top edge of raster

[*font\_descent*](#font_descent)

baseline to bottom edge of raster

[*replies\_hint*](#replies_hint)

An indication of how many more fonts will be returned. This is only a hint and may be larger or smaller than the number of fonts actually returned. A zero value does not guarantee that no more fonts will be returned.

# [DESCRIPTION](#DESCRIPTION)

Gets a list of available font names which match the given *pattern*.

# [RETURN VALUE](#RETURN_VALUE)

Returns an *xcb\_list\_fonts\_with\_info\_cookie\_t*. Errors have to be handled when calling the reply function *xcb\_list\_fonts\_with\_info\_reply*.

If you want to handle errors in the event loop instead, use *xcb\_list\_fonts\_with\_info\_unchecked*. See [**xcb-requests(3)**](/man/os/libxcb/xcb-requests.3) for details.

# [ERRORS](#ERRORS)

This request does never generate any errors.

# [SEE ALSO](#SEE_ALSO)

[**xcb-requests**(3)](/man/os/libxcb/xcb-requests.3)

# [AUTHOR](#AUTHOR)

Generated from xproto.xml. Contact xcb@lists.freedesktop.org for corrections and improvements.

libxcb 1.17.0 X Version 11

---

Document: xcb_list_fonts_with_info_properties_iterator(3) from libxcb 1.17.0-r18 (Chainguard OS)
Source: https://gitlab.freedesktop.org/xorg/lib/libxcb.git
