Because it is not guaranteed that a given character will be imaged using a single font glyph, there is no provision for mapping a character or default string to the font properties, font ID, or direction hint for the font for the character. The client may access the _X_F_o_n_t_S_t_r_u_c_t list to obtain these values for all the fonts currently in use.
Xlib does not guarantee that fonts are loaded from the server at the creation of an _X_F_o_n_t_S_e_t. Xlib may choose to cache font data, loading it only as needed to draw text or compute text dimensions. Therefore, existence of the per_char metrics in the _X_F_o_n_t_S_t_r_u_c_t structures in the _X_F_o_n_t_S_t_r_u_c_t_S_e_t is undefined. Also, note that all properties in the _X_F_o_n_t_S_t_r_u_c_t structures are in the STRING encoding.
The _X_F_o_n_t_S_t_r_u_c_t and font name lists are owned by Xlib and should not be modified or freed by the client. They will be freed by a call to _X_F_r_e_e_F_o_n_t_S_e_t with the associated _X_F_o_n_t_S_e_t. Until freed, their contents will not be modified by Xlib.
The _X_B_a_s_e_F_o_n_t_N_a_m_e_L_i_s_t_O_f_F_o_n_t_S_e_t function returns the original base font name list supplied by the client when the _X_F_o_n_t_S_e_t was created. A null-terminated string containing a list of comma-separated font names is returned as the value of the function. White space may appear immediately on either side of separating commas.
If _X_C_r_e_a_t_e_F_o_n_t_S_e_t obtained an XLFD name from the font properties for the font specified by a non-XLFD base name, the _X_B_a_s_e_F_o_n_t_N_a_m_e_L_i_s_t_O_f_F_o_n_t_S_e_t function will return the XLFD name instead of the non-XLFD base name.
The base font name list is owned by Xlib and should not be modified or freed by the client. It will be freed by a call to _X_F_r_e_e_F_o_n_t_S_e_t with the associated _X_F_o_n_t_S_e_t. Until freed, its contents will not be modified by Xlib.
The _X_L_o_c_a_l_e_O_f_F_o_n_t_S_e_t function returns the name of the locale bound to the specified _X_F_o_n_t_S_e_t, as a null-terminated string.
The returned locale name string is owned by Xlib and should not be modified or freed by the client. It may be freed by a call to _X_F_r_e_e_F_o_n_t_S_e_t with the associated _X_F_o_n_t_S_e_t. Until freed, it will not be modified by Xlib.
The _X_C_o_n_t_e_x_t_D_e_p_e_n_d_e_n_t_D_r_a_w_i_n_g function returns _T_r_u_e if the drawing functions implement implicit text directionality or if text drawn with the font_set might include context-dependent drawing; otherwise, it returns _F_a_l_s_e.
The _X_C_o_n_t_e_x_t_u_a_l_D_r_a_w_i_n_g function returns _T_r_u_e if text drawn with the font set might include context-dependent drawing; otherwise, it returns _F_a_l_s_e.
The _X_D_i_r_e_c_t_i_o_n_a_l_D_e_p_e_n_d_e_n_t_D_r_a_w_i_n_g function returns _T_r_u_e if the drawing functions implement implicit text directionality; otherwise, it returns _F_a_l_s_e.