TextPathState
State for text rendered as SVG paths.
Similar to TextState but renders text as <path> elements instead of <text>. This eliminates font hinting artifacts during animation/transformation, giving smooth scaling and rotation. Requires a font file path (TTF or OTF) instead of a font family name.
Constructor
TextPathState(
pos: Point2D | None = None,
scale: float | None = None,
opacity: float | None = None,
rotation: float | None = None,
skew_x: float | None = None,
skew_y: float | None = None,
z_index: float = 0.0,
clip_state: State | None = None,
mask_state: State | None = None,
clip_states: List[State] | None = None,
mask_states: List[State] | None = None,
filter: Filter | None = None,
NON_INTERPOLATABLE_FIELDS: frozenset[str] = frozenset({'NON_INTERPOLATABLE_FIELDS'}),
fill_color: Optional[Color] = Color.NONE,
fill_opacity: float = 1,
fill_gradient: Optional[Gradient] = None,
fill_pattern: Optional[Pattern] = None,
stroke_color: Optional[Color] = Color.NONE,
stroke_opacity: float = 1,
stroke_width: float = 1,
stroke_gradient: Optional[Gradient] = None,
stroke_pattern: Optional[Pattern] = None,
text: Union[str, List[str]] = '',
font_path: str = '',
font_size: float = 16,
text_anchor: str = 'middle',
dominant_baseline: str = 'central'
) -> None
Methods
get_renderer_class
get_renderer_class()
Get the renderer class for this state.
Returns
The renderer class for this state, or None if not registered
get_vertex_renderer_class
get_vertex_renderer_class()
Get the vertex renderer class for morphing transitions.
is_angle
is_angle(field: Field) -> bool
need_morph
need_morph(state)
with_x
with_x(x: float) -> State
with_y
with_y(y: float) -> State
Properties
xy