Tizen Native API  3.0

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).

Functions

Eina_Listelm_config_text_classes_list_get (void)
void elm_config_text_classes_list_free (Eina_List *list)
const Eina_Listelm_config_font_overlay_list_get (void)
void elm_config_font_overlay_set (const char *text_class, const char *font, Evas_Font_Size size)
void elm_config_font_overlay_unset (const char *text_class)
void elm_config_font_overlay_apply (void)
void elm_config_font_hint_type_set (int type)
Elm_Font_Properties * elm_font_properties_get (const char *font)
void elm_font_properties_free (Elm_Font_Properties *efp)
char * elm_font_fontconfig_name_get (const char *name, const char *style)
void elm_font_fontconfig_name_free (char *name)
Eina_Hashelm_font_available_hash_add (Eina_List *list)
void elm_font_available_hash_del (Eina_Hash *hash)

Function Documentation

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

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

Since (EFL) :
1.13
Since :
3.0

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.

Since :
2.3.1

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().
Since :
2.3.1
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_classText class name
fontFont name and style string
sizeFont 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()
Since :
2.3.1
void elm_config_font_overlay_unset ( const char *  text_class)

Unset a font overlay for a given Elementary text class.

Parameters:
text_classText class name

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

Since :
2.3.1

Free Elementary's list of supported text classes.

See also:
elm_config_text_classes_list_get().
Since :
2.3.1

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().

Since :
2.3.1

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:
listThe 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.
Since :
2.3.1

Free the hash returned by elm_font_available_hash_add().

Parameters:
hashthe hash to be freed.
Since :
2.3.1
void elm_font_fontconfig_name_free ( char *  name)

Free the font string return by elm_font_fontconfig_name_get().

Parameters:
namethe font properties struct
Since :
2.3.1
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:
nameThe font (family) name
styleThe 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).
Since :
2.3.1
void elm_font_properties_free ( Elm_Font_Properties *  efp)

Free font properties return by elm_font_properties_get().

Parameters:
efpthe font properties struct
Since :
2.3.1
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:
fontThe 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).
Since :
2.3.1