Elm_Fonts(3)

NAME
Elm_Fonts - Elementary Fonts

 - These are functions dealing with font rendering, selection and the like for Elementary applications.

SYNOPSIS

  Data Structures
struct _Elm_Font_Properties

  Typedefs
typedef struct _Elm_Font_Properties Elm_Font_Properties

  Functions
Eina_List * elm_config_text_classes_list_get (void)
Get Elementary's list of supported text classes.
void elm_config_text_classes_list_free (Eina_List *list)
Free Elementary's list of supported text classes.
const Eina_List * elm_config_font_overlay_list_get (void)
Get Elementary's list of font overlays, set with elm_config_font_overlay_set().
void elm_config_font_overlay_set (const char *text_class, const char *font, Evas_Font_Size size)
Set a font overlay for a given Elementary text class.
void elm_config_font_overlay_unset (const char *text_class)
Unset a font overlay for a given Elementary text class.
void elm_config_font_overlay_apply (void)
Apply the changes made with elm_config_font_overlay_set() and elm_config_font_overlay_unset() on the current Elementary window.
void elm_config_font_hint_type_set (int type)
Apply the specified font hinting type.
Elm_Font_Properties * elm_font_properties_get (const char *font)
Translate a font (family) name string in fontconfig's font names syntax into an Elm_Font_Properties struct.
void elm_font_properties_free (Elm_Font_Properties *efp)
Free font properties return by elm_font_properties_get().
char * elm_font_fontconfig_name_get (const char *name, const char *style)
Translate a font name, bound to a style, into fontconfig's font names syntax.
void elm_font_fontconfig_name_free (char *name)
Free the font string return by elm_font_fontconfig_name_get().
Eina_Hash * elm_font_available_hash_add (Eina_List *list)
Create a font hash table of available system fonts.
void elm_font_available_hash_del (Eina_Hash *hash)
Free the hash returned by elm_font_available_hash_add().
EINA_DEPRECATED void elm_font_overlay_all_apply (void)
Apply the changes made with elm_font_overlay_set() and elm_font_overlay_unset() on all Elementary application windows.

Detailed Description

These are functions dealing with font rendering, selection and the like for Elementary applications. One might fetch which system fonts are there to use and set custom fonts for individual classes of UI items containing text (text classes).

Function Documentation

  Eina_List* elm_config_text_classes_list_get (void)

Get Elementary's list of supported text classes.

Returns
    The text classes list, with Elm_Text_Class blobs as data.

Release the list with elm_text_classes_list_free().

  void elm_config_text_classes_list_free (Eina_List * list)

Free Elementary's list of supported text classes.

Parameters
    list The text classes list.

See also
    elm_config_text_classes_list_get().

  const Eina_List* elm_config_font_overlay_list_get (void)

Get Elementary's list of font overlays, set with elm_config_font_overlay_set().

Returns
    The font overlays list, with Elm_Font_Overlay blobs as data.

For each text class, one can set a font overlay for it, overriding the default font properties for that class coming from the theme in use. There is no need to free this list.

See also
    elm_config_font_overlay_set() and elm_config_font_overlay_unset().

  void elm_config_font_overlay_set (const char * text_class, const char * font, Evas_Font_Size size)

Set a font overlay for a given Elementary text class.

Parameters
    text_class Text class name
    font Font name and style string
    size Font size.

Note
    If the size is lower than zero, the value will be the amount of the size percentage. ex) -50: half of the current size, -100: current size, -10: 1/10 size.

font has to be in the format returned by elm_font_fontconfig_name_get().

See also
    elm_config_font_overlay_list_get()

    elm_config_font_overlay_unset()

    edje_object_text_class_set()

References EINA_SAFETY_ON_NULL_RETURN, and EINA_TRUE.

  void elm_config_font_overlay_unset (const char * text_class)

Unset a font overlay for a given Elementary text class.

Parameters
    text_class Text class name

This will bring back text elements belonging to text class text_class back to their default font settings.

References EINA_SAFETY_ON_NULL_RETURN, and EINA_TRUE.

  void elm_config_font_overlay_apply (void)

Apply the changes made with elm_config_font_overlay_set() and elm_config_font_overlay_unset() on the current Elementary window. This applies all font overlays set to all objects in the UI.

  void elm_config_font_hint_type_set (int type)

Apply the specified font hinting type. EVAS_FONT_HINTING_NONE < No font hinting EVAS_FONT_HINTING_AUTO < Automatic font hinting EVAS_FONT_HINTING_BYTECODE < Bytecode font hinting

Parameters
    type The font hinting type

This applies font hint changes to all windows of the current application.

Since
    1.13

References EINA_LIST_FOREACH, EINA_TRUE, EVAS_FONT_HINTING_AUTO, EVAS_FONT_HINTING_BYTECODE, EVAS_FONT_HINTING_NONE, evas_font_hinting_set(), and evas_object_evas_get().

  Elm_Font_Properties* elm_font_properties_get (const char * font)

Translate a font (family) name string in fontconfig's font names syntax into an Elm_Font_Properties struct.

Parameters
    font The font name and styles string

Returns
    the font properties struct

Note
    The reverse translation can be achieved with elm_font_fontconfig_name_get(), for one style only (single font instance, not family).

References EINA_SAFETY_ON_NULL_RETURN_VAL.

  void elm_font_properties_free (Elm_Font_Properties * efp)

Free font properties return by elm_font_properties_get().

Parameters
    efp the font properties struct

References EINA_LIST_FREE, EINA_SAFETY_ON_NULL_RETURN, and eina_stringshare_del().

  char* elm_font_fontconfig_name_get (const char * name, const char * style)

Translate a font name, bound to a style, into fontconfig's font names syntax.

Parameters
    name The font (family) name
    style The given style (may be NULL)

Returns
    the font name and style string

Note
    The reverse translation can be achieved with elm_font_properties_get(), for one style only (single font instance, not family).

References EINA_SAFETY_ON_NULL_RETURN_VAL, and eina_stringshare_add().

  void elm_font_fontconfig_name_free (char * name)

Free the font string return by elm_font_fontconfig_name_get().

Parameters
    name the font properties struct

References eina_stringshare_del().

  Eina_Hash* elm_font_available_hash_add (Eina_List * list)

Create a font hash table of available system fonts. One must call it with list being the return value of evas_font_available_list(). The hash will be indexed by font (family) names, being its values Elm_Font_Properties blobs.

Parameters
    list The list of available system fonts, as returned by evas_font_available_list().

Returns
    the font hash.

Note
    The user is supposed to get it populated at least with 3 default font families (Sans, Serif, Monospace), which should be present on most systems.

References EINA_LIST_FOREACH.

  void elm_font_available_hash_del (Eina_Hash * hash)

Free the hash returned by elm_font_available_hash_add().

Parameters
    hash the hash to be freed.

  EINA_DEPRECATED void elm_font_overlay_all_apply (void)

Apply the changes made with elm_font_overlay_set() and elm_font_overlay_unset() on all Elementary application windows. This applies all font overlays set to all objects in the UI.

Deprecated
    Use elm_font_overlay_apply and elm_config_all_flush()

Author

Generated automatically by Doxygen for EFL from the source code.