Unity-EmojiUI更新

Unity Emoji表情(图文混排)2022最详细教程 文章目录前言一、emoji是什么?emoji (日本在无线通信中所使用的视觉情感符号)二、使用步骤1.将源码文件导入自己的项目中步骤一:将Editor目录文件EmojiAtlasBaker移入到自己的项目Editor目录下步骤二、导入Icon到自己项目中 (EmojiAtlas 跟 QQIconAtlas可先删除掉,步骤五可生成图集及xml文件)步骤三、导入EmojiEffect跟EmojiTextManager脚本到项目Script目录下步骤四、在项目根目录下创建Xml文件夹,下面的两个文件是步骤五生成的 阅读详情

    项目中可能会用到emoji表情,所以这几天针对这个模块进行了制作和整理。

    首先,在网上进行简单的搜索查找现成方案,主要搜索结果为textmeshpro和github上的一些emoji项目,因为闭源的关系,这里先跳过textmeshpro(暂时不想反编译╮(╯▽╰)╭)。所以目标定为github上的emoji项目,看到了这个项目:https://github.com/coding2233/TextInlineSprite。看到了上面的示意图片,感觉基本够了,so下载下来看了看,运行了example,觉得基本也差不多,然后依赖文件不多,非常轻量,遂决定查看下代码,然后可怕的事情就发生了~:

    在代码中我发现了这个:


大哥 - -,这么多foreach 你让低版本的unity开发者用了怎么玩啊,,然后清空的previousdata的时候每次new一个,而不循环复用?,那你gc可真的是很棒棒哟。。

Next:


每次都new新对象,搞个pool不是更好?还有坐标系转换的一些问题,这里也不做阐述,类似的性能问题非常严重。。代码结构问题也就不说了。。

    所以直接使用它的代码是我所不能接受的,所以改!

    然而改代码就需要理解原作者的思路,并没有看他的博客什么的,从源代码进行分析,思路如下:使用richtext中的quad为表情占位(这里使用预先生成好的spri

Unity 提取字符串中的emoji 在Unity中使用TextMeshPro加载Emoji时,普通的Emoji(如😀)可以正常显示,但组合型Emoji(如👨‍🏫或👧🏿)会被分开显示,无法正确识别。为了解决这一问题,可以参考GitHub上的emoji.wpf项目,通过提取组合型Emoji并替换为<sprite>富文本或其他方式来实现正确显示。文章提供了相关代码示例,展示了如何通过正则表达式匹配和提取Emoji,并将其替换为富文本格式。此外,还介绍了如何处理Emoji的变体(如肤色)以及如何加载和解析Emoji数据。通过这些 阅读详情

相关推荐

Unity3D.EmojiText:Unity3D中的EmojiText

Untiy3D.EmojiText 表情文字 从UnityEngine.UI.Text扩展 如果未附加EmojiConfig,则具有相同的性能。 由UnityEngine.UI.Text处理的布局仅替换生成的文本网格的UV。 因此,您可以使用RichText更改文本的大小和颜色。 (Emoji Sprite不会更改颜色。我禁用了它。您还需要在EmojiConfig中将sizeFactor设置为1) 不需要子GameObject(实际上需要一个子对象来附加CanvasRenderer)。 使用CanvasRenderer渲染表情符号网格。 支持带有markdown链接语法的超链接单击事件。

Unity开发对Emoji表情包图文混排进行处理显示(支持大多数表情)

1、开源案例源码,刚好找到,里面自己优化了一下脚本 2、适用于微信登录含有Emoji表情进行处理显示

EmojiText:Unity UGUI Text的Emoji和超链接,继承自UGUI中的Text组件,实现超链接和图文混排

EmojiText(Emoji,用于UGUI的超链接) Emoji和用于Unity UGUI的超链接文本,继承自UGUI中的文本组件,实现超链接和图文混排, 参考了 相较于GText修改了: 新增点击超链接范围外的一部分 优化下划线表现 新增了超链接颜色渐变 删除了单独的下划线 删除了自定义加载动画 效果图: 输入内容: 测试[E1]默认大小且无点击表情 测试[E2|40#E2Cclick]自定义大小且可点击表情 测试[A1|40#AnimationClick]自定义大小且可点击动态表情 测试[0x01#ff0000#ff00ff#ClickLink=HyperLink超链接]可点击且渐变

EmojiText:基于UGUI在文字组件上支持表情符号系统

表情文字 基于UGUI,在Text组件上支持表情符号系统。 Unity版本:2017 How to use? 1) Put all emojies in Asset/Framework/Resource/Emoji/Input. Multi-frame emoji name format : Name_Index.png , Single frame emoji format: Name.png 2) Excute EmojiText->Build Emoji from menu in Unity. 3) It will outputs two textures and a txt in Emoji/Output. Drag emoji_tex to "Emoji Texture" and emoji_data to "Emoji Data" in UGUIEmoji mat

产业园区运营负责人如何实现创新资源的系统化配置?.docx

产业园区运营负责人如何实现创新资源的系统化配置?

[Linux]双网卡 CentOS 系统中指定网络请求走特定网卡的配置方法

本文详细介绍了在双网卡CentOS系统中指定特定域名/IP通过指定网卡传输流量的方法。核心步骤包括:1)确认网卡信息(ip addr)和域名IP解析(nslookup);2)添加临时路由(ip route add);3)持久化配置(创建route-eth1文件);4)验证配置(ip route show和curl测试)。文章还提供了网关查询、路由删除等常见问题的解决方法,并区分了不同CentOS版本重启网络服务的命令差异。通过合理配置路由规则,可实现流量的定向传输需求。

wingaso的博客 1573

C++控制台实现简单的注册登录

C++控制台实现简单的注册登录 #include<iostream> #include<string> #include <vector> #include <conio.h> void Display();//调用display显示switch()界面 void Register();//注册 void Enter();//登录 using nam...

乔路非 2万+

解决usbisp不识别无法烧录Atmega328P,Arduino不识别问题

如果使用Arduino IDE里面的烧录,可能会遇到一个问题,就是不识别国产这种廉价的USBISP 点击烧录引导程序,会遭遇到找不到USB设备的问题,选哪个都会提示找不到,比如选择USBasp could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp' 因此,我们需要使用到progisp这一个软件的1.72版本 选择好芯片的型号后,调用编译好的HEX文...

arenascat的博客 7439

逆变器LCL滤波器参数设计(一)

1.基本介绍 并网型逆变器一般是电流源逆变器,滤波器基本用LCL结构。 假设要设计额定功率10KVA的单相逆变器,采用两电平的全桥拓扑,采用SPWM控制,载波频率20KHz,电网等级220V,频率50Hz。 拓扑结构如图所示: 直流输入电压分为上下母线各1/2Vin,半母线电压为380V。 L1采用高频磁芯绕制,称为高频电感;L2用工频电感绕制,称工频电感;C是滤波电容,为高频谐波电流提供通路;Vg为电网电压。 载波调制比为:Mr=220*1.414/380=0.819 2.高频电感量的计算 逆变器可以等

weixin_43549807的博客 5万+

IEEE LaTeX模板中algorithm排版避坑指南:如何优雅地嵌入算法描述?

本文详细解析了在IEEE LaTeX模板中优雅排版algorithm的实用技巧,包括基础配置、高级自定义及常见问题解决方案。通过嵌套环境与[H]参数的应用,帮助研究者克服IEEEtran模板对算法排版的限制,实现专业且美观的算法呈现。

weixin_28340315的博客 409

【C语言笔记初级篇】第一章:C语言快速入门及注意事项

(1)第一个C语言程序 A:利用vs2010写C语言程序 1:按以下步骤新建工程 2:添加源文件,“.c”文件 B:第一个C语言代码 1:以下是基本的C语言程序 2:由于没有设置连接器,所以打印结果没有显示,按照如下步骤链接控制台 (2)数据类型 A:基本数据类型及占用字节 B:一些概念的梳理 概念一:关于计算机的单位 位(bit):计算机通过电路的开关和闭合处理信息,电路通...

快乐江湖的博客 3737

MIKE水动力笔记17_MIKE文件转shp、统计每个单元格的面积

MIKE的工具箱中自带一个转shp的工具,然后可以拖进ArcGIS中很方便的统计每个单元格的面积和每个网格点的水深。

晏长街的博客 4153

【数据同化第一期】基本概念介绍

【数据同化第一期】基本概念介绍

WW、forever的博客 1905

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

上一篇: 地形转网格工具(Terrain2Mesh)
下一篇: 浅谈资源加载 -AssetBundleSystem
KubilityDef
博客等级 码龄9年 27粉丝 4原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值