gamemaker吧 关注:13,655贴子:95,217
  • 1回复贴,共1

gms2 富文本动效打字机实现

取消只看楼主收藏回复

这是一个附带动态效果的富文本打字机,不过说是富文本,实际也就实现了改变颜色,字体、大小、透明度、调整对齐方式等功能(顺带一提,字体大小也是通过改变字体实现的,实在不知道怎么通过代码该字体大小,有知道的老哥望告知~)
动效实现了可调整抖动幅度的同步/异步抖动,以及可调整波幅、波长、波速的波函数浮动。另外实现了文本自动换行、自适应行间距、英文拆词、超长英文词汇短横杆连接拆分、前引号不出现在行尾,符号不出现在行首等文本格式功能。
(话说隔壁godot吧,关注比这里少一大半但是都挺热闹的,为啥这吧这么冷清。我是不是选错引擎了啊,都用了一个多月了,现在转行还来得及吗)
回归正题,先上效果图:

自动换行及自适应行高

调整对齐方式

预览图

实现方式及代码放二楼


IP属地:四川1楼2024-04-27 10:15回复
    实现思路:为了避免打字机会出现的各种格式及文字排版的问题,我把这个效果分成了两个部分——一个文本构建器,一个打字机。文本构建器负责换行、高度控制、分词拆词、以及标点符号等特殊处理;打字机只需根据文本构建器处理好的标准化文本,逐字打印即可。这样一来不仅避免了打字机会出现的各种问题,还能让逻辑代码不至于太冗长。
    以下代码(我觉得应该没必要一行一行的解释吧,如果有人需要我再补充好了):
    · 文本构造器

    · 打字机

    · 测试代码


    IP属地:四川3楼2024-04-27 13:07
    回复