在QT QTextEdit中粘贴表情符号

Joh*_*ohn 5 c++ user-interface qt qt4 qt5.3

我试图在QT QTextEdit框中粘贴表情符号,但它没有被识别,它显示为??? 要么 [][]

我不是在谈论笑脸,我在谈论表情符号.

我怎样才能确保QT的QTextEdit接受表情符号并正确显示它们?

谢谢.

根据以下有用的答案得到它:

解:

    QFontDatabase fontDB;
    fontDB.addApplicationFont(":/Resources/fonts/seguisym.ttf");

    QApplication::setFont(QFont(QStringLiteral("Segoe UI Symbol")));
Run Code Online (Sandbox Code Playgroud)

mhc*_*rvo 5

相当数量的表情符号字符包含在Unicode 标准中。例如,如果您在 Mac OS X 10.9 中使用 Qt 5.3 进行开发,则在文本编辑中粘贴表情符号字符应该像粘贴任何其他字符一样工作。

?您的应用程序显示和/或的原因[]是因为当前字体(可能是默认系统字体)不提供表情符号“字符”的表示。您可以在网络上找到合适的字体。检查以供参考。

然后您可以将字体添加到您的 Qt 应用程序中

QFontDatabase fontDB;
fontDB.addApplicationFont(":/A Font Supporting Emoji.ttf");
Run Code Online (Sandbox Code Playgroud)

并将其设置为您的应用程序的字体,或者QTextEdit如果您愿意,仅将其设置为您的字体

setFont(QFont(QStringLiteral("A Font Supporting Emoji")));
Run Code Online (Sandbox Code Playgroud)

有了这个,您的应用程序应该能够显示表情符号