跳转到内容

SusTextFx

SusTextFx

逐字形文本特效(wave/shake/rainbow/bounce/fade/wiggle)与 Reveal01 打字机效果;有 MaxAnimatedChars 预算;fx 段外仍保留 UITK 原生 rich text。

SusKit · 原子(商业)

在 Playground 中打开

SusKit · Atoms

属性

名称类型默认值
TextProp<string>""v-model
EnabledProp<bool>true
SpeedProp<float>1f
Reveal01Prop<float>1f
RevealCharsPerSecondProp<float>0f
MaxAnimatedCharsProp<int>200

插槽

没有插槽。

事件

名称字段载荷
RevealCompletedOnRevealCompleted

样式钩子

USS 类契约 — 无需改 C# 即可覆盖外观。状态通过这些类切换:

  • sus-text-fx
  • sus-text-fx__glyph
  • sus-text-fx__glyph--hidden
  • sus-text-fx__line
  • sus-text-fx__plain
  • sus-text-fx__space
  • sus-text-fx__word

用法

内联标签为单个字形做动画。未知标签与普通 UITK rich text(<b><color>)在 fx 段外透传;在 fx 段内,v1 不支持原生 rich text。

xml
<template>
  <SusTextFx Text="Hello <wave>world</wave> — <shake a=&quot;2&quot;>quake</shake>" />
</template>
csharp
var fx = new SusTextFx();
fx.Text.Value = "Loot: <rainbow>Legendary</rainbow>";
fx.Reveal01.Value = 0f;
fx.RevealCharsPerSecond.Value = 40f; // typewriter; 0 = drive Reveal01 yourself
fx.OnRevealCompleted = () => { /* line finished */ };
Prop / API角色
Text带可选 fx 标签的源文本(wave / shake / rainbow / bounce / fade / wiggle
Enabledfalse ⇒ 单个 plain Label,无字形、无 ticker
Speedfx 相位的全局时间倍率
Reveal01已显示字形比例 0…1
RevealCharsPerSecond自动推进 Reveal01;0 = 外部驱动
MaxAnimatedChars预算(默认 200);超限 ⇒ 静态渲染 + 一次 Warn
OnRevealCompletedreveal 到末尾时触发一次

说明

  • Storybook story Text Fx (text-fx).
  • Hub shot kit-text-fx.png — 展示,已从 Play mode 实拍。