Textpath
Elementary

## Enumerations

enum | Efl_Ui_Textpath_Direction { EFL_UI_TEXTPATH_DIRECTION_CW = 0 , EFL_UI_TEXTPATH_DIRECTION_CCW , EFL_UI_TEXTPATH_DIRECTION_CW_CENTER , EFL_UI_TEXTPATH_DIRECTION_CCW_CENTER }
| Textpath direction. More...

## Functions

void | elm_textpath_circular_set (Efl_Ui_Textpath *obj, double radius, double start_angle, Efl_Ui_Textpath_Direction direction)
| Set a circle with given radius, and start angle.
void | elm_textpath_slice_number_set (Efl_Ui_Textpath *obj, int slice_no)
| The number of slices.
int | elm_textpath_slice_number_get (const Efl_Ui_Textpath *obj)
| The number of slices.
void | elm_textpath_ellipsis_set (Efl_Ui_Textpath *obj, Eina_Bool ellipsis)
| Control the ellipsis behavior of the textpath.
Eina_Bool | elm_textpath_ellipsis_get (const Efl_Ui_Textpath *obj)
| Control the ellipsis behavior of the textpath.
EINA_DEPRECATED void | elm_textpath_circle_set (Efl_Ui_Textpath *obj, double x, double y, double radius, double start_angle, Efl_Ui_Textpath_Direction direction)
| Set a circle with given center, radius, and start angle.
Evas_Object * | elm_textpath_add (Evas_Object *parent)
| Add a new textpath to the parent.
void | elm_textpath_text_user_style_set (Evas_Object *obj, const char *style)
| Set the user text style.

## Detailed Description

## Enumeration Type Documentation

## Efl_Ui_Textpath_Direction

enum Efl_Ui_Textpath_Direction

Textpath direction.

Enumerator
EFL_UI_TEXTPATH_DIRECTION_CW | Clockwise.
EFL_UI_TEXTPATH_DIRECTION_CCW | Counter-clockwise.

EFL_UI_TEXTPATH_DIRECTION_CW_CENTER

Clockwise, middle of text will be at start angle.

Since
  1.23

EFL_UI_TEXTPATH_DIRECTION_CCW_CENTER

Counter-clockwise, middle of text will be at start angle.

Since
  1.23

## Function Documentation

## elm_textpath_circular_set()

void elm_textpath_circular_set | ( | Efl_Ui_Textpath * | obj,
|  | double | radius,
|  | double | start_angle,
|  | Efl_Ui_Textpath_Direction | direction )

Set a circle with given radius, and start angle.

The circle center will be decided by the object center position.

Parameters

  [in] | obj | The object.
  [in] | radius | Radius of the circle
  [in] | start_angle | Start angle of the circle
  [in] | direction | Textpath direction

Since
  1.23

## elm_textpath_slice_number_set()

void elm_textpath_slice_number_set | ( | Efl_Ui_Textpath * | obj,
|  | int | slice_no )

The number of slices.

The larger the number of slice_num is, The better the text follows the path.

Parameters

  [in] | obj | The object.
  [in] | slice_no | Number of slices

## elm_textpath_slice_number_get()

int elm_textpath_slice_number_get | ( | const Efl_Ui_Textpath * | obj | ) |

The number of slices.

The larger the number of slice_num is, The better the text follows the path.

Parameters

  [in] | obj | The object.

Returns
  Number of slices

## elm_textpath_ellipsis_set()

void elm_textpath_ellipsis_set | ( | Efl_Ui_Textpath * | obj,
|  | Eina_Bool | ellipsis )

Control the ellipsis behavior of the textpath.

Parameters

  [in] | obj | The object.
  [in] | ellipsis | To ellipsis text or not

## elm_textpath_ellipsis_get()

Eina_Bool elm_textpath_ellipsis_get | ( | const Efl_Ui_Textpath * | obj | ) |

Control the ellipsis behavior of the textpath.

Parameters

  [in] | obj | The object.

Returns
  To ellipsis text or not

## elm_textpath_circle_set()

EINA_DEPRECATED void elm_textpath_circle_set | ( | Efl_Ui_Textpath * | obj,
|  | double | x,
|  | double | y,
|  | double | radius,
|  | double | start_angle,
|  | Efl_Ui_Textpath_Direction | direction )

Set a circle with given center, radius, and start angle.

Parameters

  [in] | obj | The object.
  [in] | x | X coordinate of center
  [in] | y | Y coordinate of center
  [in] | radius | Radius of the circle
  [in] | start_angle | Start angle of the circle
  [in] | direction | Textpath direction

Deprecated
  Use elm_textpath_circular_set() instead.

References EFL_UI_TEXTPATH_DIRECTION_CW, EFL_UI_TEXTPATH_DIRECTION_CW_CENTER, EINA_DBL_EQ, EINA_FALSE, and EINA_SIZE2D.

## elm_textpath_add()

Evas_Object * elm_textpath_add | ( | Evas_Object * | parent | ) |

Add a new textpath to the parent.

Parameters

  [in] | parent | The parent object

Returns
  The new object or NULL if it cannot be created

Since
  1.22

References EINA_SAFETY_ON_NULL_RETURN_VAL.

## elm_textpath_text_user_style_set()

void elm_textpath_text_user_style_set | ( | Evas_Object * | obj,
|  | const char * | style )

Set the user text style.

Parameters

  [in] | obj | The textpath object
  [in] | style | The user text style. If the sytle is $null, the default style will be applied

Note
  ellipsis in the style will be ignored since textpath supports ellipsis API.

See also
  elm_textpath_ellipsis_set()

Since
  1.25

References edje_object_part_text_style_user_pop(), edje_object_part_text_style_user_push(), eina_strbuf_append(), eina_strbuf_free(), eina_strbuf_new(), and eina_strbuf_string_get().