Qt 实现Unicode字符表情包显示到界面 Emoji


前言

最近需要写一个关于qt 表情包的项目 表情包除了有gif 和 png 形式,还有unicode编码形式的表情包,图片的很好搞定,就是unicode的一时没什么思路,其实实现起来非常简单。

一、实现方式

通过将表情字符unicode编码转成QString的形式插入到文本框中,QLabel QLineEdit QTextEdit 都支持这种方式。使用这种方式可以更好的跨平台。不同平台(windows mac Android ,,)的显示图标也不一样,但是风格都是统一的,可以参考:https://emojipedia.org/grinning-face/

关键函数

QString::fromUcs4(char32_t *t);		//这个函数可以直接上unicde编码直接转成QString的字符串形式

二、代码

char32_t  t[] = {0x1F601,0x0};	//加上0x00是为了防止表情后面跟随乱码

for(char32_t i = 0x1F601 ; i <=  0x1F64F ; ++i)
{
    t[0] = i ;
    ui->textBrowser->insertPlainText(QString::fromUcs4(t));
}

三、效果

在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值