微信emoji表情如何正确显示

微信emoji表情如何正确显示

微信表情不是 unicode 的 emoji,是腾讯自己实现的转译

不好意思,可能我说错了。例如微信昵称是 :kiss:Smile° ,我直接复制到label中场景编辑器中显示正常,但是运行预览时前面的:kiss:就变成??了。:kiss:这个应该是unicode 的 emoji。unicode 的 emoji如何正常显示呢。谢谢

默认用自定义的字体试试

label 启用系统字体,应该就能支持

如果是聊天传输的,需要先转成\uxxxx,再发给服务器,然后在收到后需要每个单独处理,用正则匹配所有/\u\w{4}/g,parseInt( “0x” + 去掉\u后的内容 ),最后String.fromCharCode,一个个加上去,就可以正常显示,但并不是所有都支持,IOS有部分三个unicode,4个unicode的支持不了

我使用的是自定义字体,用这个方法能显示,在RichText里面

不行。运行后就成

不是聊天传输的,是我直接复制的微信授权登录后的昵称

还是不行,谢谢了

我刚刚确认了下,Cocos 并不支持插入 emoji,因为字体是固定的。

可是场景编辑器中可以显示。

这个我也不太懂,那你检查一下 .fire 文件的编码什么的吧

我在我这试了几下,好像可以
:rainbow::lips:

label中直接能显示?

嗯123456

也可以下一个emoji字符库 ,类似这个"\uE04A":“:sunny:”, “\uE049”:“:cloud:”, “\uE04B”:“:umbrella:”, “\uE048”:“:snowman:”, “\uE13D”:“:zap:”,,然后获得了玩家名字,对着解析。把字体设置成使用系统字体就可以了

我试了下直接获取的微信昵称,用系统字库,Label显示,在ios上成功直接显示了,但在android上就是空白显示

需要对应字体。。 emoji是文字。跟你现在看到的我打的这些没有什么本质区别~ 只是你认识的“纯文字”一般utf8编码都是最多3个字节而已~ emoji基本都是4个字节的。一般字体中并没有这些字符,所以是空白。

下一个常用emoji字体文件,设置对应字体应该就可以展示了~ iOS为什么能直接展示呢?因为iOS内置了全量的emoji字体文件。

我刚好相反。。IOS白色轮廓,android正常。。