1. 程式人生 > 其它 >Qt 實現Unicode字元表情包顯示到介面 Emoji

Qt 實現Unicode字元表情包顯示到介面 Emoji

技術標籤:Qtc++c++qt

文章目錄


前言

最近需要寫一個關於qt 表情包的專案 表情包除了有gif 和 png 形式,還有unicode編碼形式的表情包,圖片的很好搞定,就是unicode的一時沒什麼思路,其實實現起來非常簡單。

一、實現方式

通過將表情字元unicode編碼轉成QString的形式插入到文字框中,QLabel QLineEdit QTextEdit 都支援這種方式。使用這種方式可以更好的跨平臺。

關鍵函式

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));
}

三、效果

在這裡插入圖片描述