打字机效果换行怎么处理?


做新手引导自己写了个打字机效果,如图第一行最后一段会出现跳行,这怎么处理?求大佬们给个思路。截屏2022-02-15 下午5.27.18
文本的overflow设置的clamp模式

用中文就没问题了

是有特么那么点道理,但是。。。。对吧

貌似是默认是一个单词,这个情况一直都有得,你经常逛论坛,不应该啊

非要用英文的话 就得在每个要换行的地方提前换很麻烦

我知道是默认一个单词,想看看能不能处理这玩意。比如怎么提前换行好?或者其他怎么处理一下的那种

能给个思路么。。。。?

自己换行不可吗 let str = “acbd\nefgh\n”;这样

let str = “are you\n ok?”
比如you后面如果不换行可能会出这个问题 你就在you这里换行
然后把这个字符串丢到你的打字机方法里就行

这个思路只针对字体大小不变 文字内容不变才有效果 你的新手引导应该符合这个情况

是的,如果是用给定字体的话就可以,但是每句话都得单独调配置,确实麻烦

根据打印范围和字符计算长度,得出一行得文字长度,然后生成多个labe处理应该也能用 :rofl:

但是这个是引擎做的处理 你也不好智能判断 这样粗暴是最省事的

:rofl:算了,我决定用shader来处理了,我记得论坛里有方案,反正这里始终会增加1次dc,换成shader方案应该没啥负担

你可以用连字符(就是减号)把一个单词拆成两个,然后在需要换行的地方加一个连字符就可以完美换行了

文字一开始全部显示,上层用其他节点做遮挡,逐字符移动:ok_hand:

你这样也需要改配置表。。。
我懒,论坛里没找到就自己写了个shader,明天调调再发出来

多行就难弄了

既然是因为默认为一个单词,那换行的时候加一个空格符行不行,这样就不会被判断为一个单词了吧。。