用途:以稳定速率逐字符揭示文本,模拟真实用户打字,节奏为线性、无缓动,目标是机械/拟人感而非动画感。
主要能力:支持完整文本、每帧字符数(如 30fps 下约 10 字符/秒)、首字符前延迟帧数、末字符后延迟帧数;可配置光标显示、闪烁周期帧数、颜色、宽度像素、高度 em;可设置字体、字号、颜色、行高。行为上,在首字符延迟后开始揭示,第 F 帧揭示字符数为 floor((F - delay) * chars_per_frame),全文揭示后等待末字符延迟再进入下一阶段,光标按闪烁周期在已揭示文本末尾闪烁。实现为使用 useCurrentFrame() 和字符串切片的 React 组件。
使用方式:在 SP-F(产品演示)风格包中作为规范用法,置于提示词卡片内并显示光标。
质量检查:线性节奏,无缓动、无加速减速;光标以约 1Hz 合理节奏闪烁;文本在容器宽度内正确换行;全文在场景结束前揭示完毕,并为光标木偶留出缓冲。
限制与失败模式:打字加速或减速时应使用帧乘速率的整数截断,不要应用缓动;光标不闪烁需检查取模的闪烁周期;光标位置滞后于文本时,光标 x 位置须匹配已揭示文本的渲染长度,可用 getBoundingClientRect() 或字体度量计算;文本溢出容器时需按容器宽度约束并预先测试换行。