gpt4 book ai didi

c++ - 如何使用 QT 在 Linux 上正确显示 unicode 符号?

转载 作者:行者123 更新时间:2023-11-28 06:46:57 26 4
gpt4 key购买 nike

我想在 QT 中添加一个 Unicode 符号作为列表小部件项。 (特别是这个项目:http://www.fileformat.info/info/unicode/char/25B6/index.htm)

我正在为此使用以下方法:

this->addItem( new QListWidgetItem(  QString::fromUtf8("\u25B6")) ) ; 

但是当我打开这个小部件时,我只看到一个空白矩形代替了这个 unicode 符号。我什至也尝试过其他 unicode 符号,但它们也只显示空白矩形。

这个方法有什么问题?

编辑:按照答案后,我将 QListWidgetItem 的字体更改为 Serif,它起作用了。

最佳答案

有几种可能性,但最有可能的是您使用的字体根本没有实现字形。你能看到例如三角形吗?使用与 Qt 字体相同的字体时的编辑器?

编辑:字体(保存在系统的字体文件中)是在屏幕上绘制每个字符图像的命令)。许多(如果不是全部)字体是不完整的,这意味着它们无法表示 unicode 中可能的所有 2,000,000,000 多个代码(代表字符的数字)。这些文件太大而不实用。

您要打印的三角形非常基本,应该可以在许多字体集中使用。 Liberation Sans 和 Liberation Serif 是我刚刚检查过的两个。

我怀疑 Qt 使用了系统的字体集,这可能可以在系统设置的某个地方进行更改。如果您告诉我们您使用的是哪个发行版(即 Ubuntu、Debian 等),也许我们可以提供帮助。

关于c++ - 如何使用 QT 在 Linux 上正确显示 unicode 符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24808078/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com