SusTextFx

逐字形文本特效(wave/shake/rainbow/bounce/fade/wiggle)与 Reveal01 打字机效果;有 MaxAnimatedChars 预算;fx 段外仍保留 UITK 原生 rich text。
包
SusKit · 原子(商业)
属性
| 名称 | 类型 | 默认值 | |
|---|---|---|---|
Text | Prop<string> | "" | v-model |
Enabled | Prop<bool> | true | |
Speed | Prop<float> | 1f | |
Reveal01 | Prop<float> | 1f | |
RevealCharsPerSecond | Prop<float> | 0f | |
MaxAnimatedChars | Prop<int> | 200 |
插槽
没有插槽。
事件
| 名称 | 字段 | 载荷 |
|---|---|---|
RevealCompleted | OnRevealCompleted | — |
样式钩子
USS 类契约 — 无需改 C# 即可覆盖外观。状态通过这些类切换:
sus-text-fxsus-text-fx__glyphsus-text-fx__glyph--hiddensus-text-fx__linesus-text-fx__plainsus-text-fx__spacesus-text-fx__word
用法
内联标签为单个字形做动画。未知标签与普通 UITK rich text(<b>、<color>)在 fx 段外透传;在 fx 段内,v1 不支持原生 rich text。
xml
<template>
<SusTextFx Text="Hello <wave>world</wave> — <shake a="2">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) |
Enabled | false ⇒ 单个 plain Label,无字形、无 ticker |
Speed | fx 相位的全局时间倍率 |
Reveal01 | 已显示字形比例 0…1 |
RevealCharsPerSecond | 自动推进 Reveal01;0 = 外部驱动 |
MaxAnimatedChars | 预算(默认 200);超限 ⇒ 静态渲染 + 一次 Warn |
OnRevealCompleted | reveal 到末尾时触发一次 |
说明
- Storybook story Text Fx (
text-fx). - Hub shot
kit-text-fx.png— 展示,已从 Play mode 实拍。