Qt 實現Unicode字元表情包顯示到介面 Emoji
阿新 • • 發佈:2021-01-24
文章目錄
前言
最近需要寫一個關於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));
}