首页 > 其他分享 >Unity UGUI实现图文混排

Unity UGUI实现图文混排

时间:2022-12-13 15:06:29浏览次数:90  
标签:自定义 标签 Unity 图文混排 Text 组件 UGUI 图片


目前在unity实现图文混排的好像都是通过自定义字体然后在文本获取字符的位置,用图片替换掉图片标签,这样对于支持英文来说,并没有什么影响。然后对于中文来说就是一个相当麻烦的事了,毕竟图文混排多用于游戏聊天,这样就需要将中文的所有常用汉字都添加进去,想想都不怎么科学

于是我就想在ugui自带的Text组件的基础上,实现图文混排,花了一点时间,也算有点成果了

整理一下,实现图文混排的步骤:

  1. 准备了一些图片,并制作了一个asset文件,将所有图片的信息保存进去,方便调用
  2. 写了一个SpriteGraphic,用来渲染图片,放在Text组件下
  3. 写了一个管理类,主要用来识别标签,通过标签获取到图片信息,并将所有图片信息用​​CanvasRenderer.SetMesh​​绘制在SpriteGraphic上,这样就避免了在Text组件下出现多张图片。图片标签定义的为<sprite=1 />,这里1就是导进来的图片在asset文件中的ID
  4. 这里看一下,输入时候的文本
  5. 这是运行后的效果
  6. 我在网上又找了一个字体,测试一下
    运行前:

运行后:

Unity UGUI实现图文混排_图文混排

  1. 其实应该还有一些可以扩展的功能,比如说图片大小可自定义,表情可以是动画等等。。。


标签:自定义,标签,Unity,图文混排,Text,组件,UGUI,图片
From: https://blog.51cto.com/u_15911199/5934137

相关文章

  • Unity插件 - MeshEditor(十) 模型风力拉扯特效
    更新日期:2020年4月23日。 Github源码:​​​[点我获取源码]​​ 先上几张效果图:  (导演:我们需要一个刮风的效果,道具组,上大风扇) (导演:咔!!!行了,道具组你们明天不用来上班了) ......
  • Unity 纹理优化及TextureProcessor工具
    更新日期:2020年11月18日。Github源码:​​​[点我获取源码]​​索引​​纹理优化​​​​TextureProcessor工具​​​​使用​​​​Resizer纹理缩放器​​​​打开纹理缩放......
  • Unity插件 - MeshEditor(十一) 模型正弦扭曲特效
    更新日期:2020年4月23日。Github源码:​​​[点我获取源码]​​ 先上几张效果图:   OK,进入今天的正题吧,插一个正弦函数的话题进来: 首先,正弦函数曲线,如下:  在如上坐标系......
  • 【Unity】 HTFramework框架(三十九)UI的数据驱动模式,MVVM
    更新日期:2020年10月24日。Github源码:​​​[点我获取源码]​​​Gitee源码:​​[点我获取源码]​​索引​​UI的数据驱动模式​​​​使用​​​​数据模型​​​​Bindabl......
  • Unity UGUI无限列表(Infinite List)
    更新日期:2020年10月16日。Github源码:​​​[点我获取源码]​​索引​​InfiniteList​​​​使用​​​​创建InfiniteListScrollRect​​​​InfiniteListScrollRect参数......
  • Unity - 粒子系统跟随路径移动
    对于最新版的粒子系统ParticleSystem,要让其跟随路径移动,无非就是借用其自身的API直接为每个粒子设置速度。看一下最终的效果图:编辑器为了能在场景中更方便的编辑路径,我们要......
  • 【Unity】 HTFramework框架(三十七)Inspector自定义序列化检视器
    更新日期:2020年8月21日。Github源码:​​​[点我获取源码]​​​Gitee源码:​​[点我获取源码]​​索引​​Inspector自定义序列化检视器​​​​使用​​​​Dropdown下拉......
  • 【Unity】 HTFramework框架(三十六)AssetsMaster资源管理器,做资产的主人
    更新日期:2020年8月13日。Github源码:​​​[点我获取源码]​​​Gitee源码:​​[点我获取源码]​​索引​​AssetsMaster​​​​使用AssetsMaster​​​​打开AssetsMaster......
  • Unity 多物体混合动画、值变动画控制器
    索引​​前言​​​​示例​​​​1、4个Cube的联动动画​​​​2、UGUIText文本动画​​​​3、UGUIImage图片动画​​​​4、物体消隐动画​​​​使用与解析​​​​1......
  • Unity实现在白板上绘画涂鸦
    前言有段时间没有更新博客了,不知道应该写些什么,太简单感觉没有记录的必要,太难自己都没能理解,不知道如何下手。回归初心,记录自己想记录的东西。需要实现一个白板绘画的功能,......