gpt4 book ai didi

qt - 判断一个 QFont 是否支持某个 UTF-8 字符

转载 作者:行者123 更新时间:2023-12-04 12:41:03 27 4
gpt4 key购买 nike

我正在向 QTextEdit 打印一些花哨的 UTF-8 字符,即右箭头 0x2192 和闪电 0x21AF。这在像 Ubuntu 这样的现代操作系统上效果很好,但对于例如Windows XP,因为字体似乎不支持那些 UTF-8 字符。相反,绘制了臭名昭著的小占位符方 block 。

有没有办法找出 QFont 实例的当前字体是否支持给定字符,所以我可以回退到更简单的字符,如右箭头的“-->”?

我发现 Qt 4.8 有一个 QRawFont 类,它确实有一个 QRawFont::supportsCharacter() 方法,它完全符合我的要求,但我现在不能使用 4.8,我最多使用 4.6 或 4.7。
我查看了实现,他们调用 QFontEngine::canRender()。但是,QFontEngine 似乎是一个无法从外部访问的类。我可以在 4.7 中找到的唯一类似的发声类是 QFontEngineInfo 和 QFontEnginePlugin,它们似乎都没有对我的情况提供任何帮助。

最佳答案

canRender也被 QFontMetrics::inFont(QChar) 调用.

关于qt - 判断一个 QFont 是否支持某个 UTF-8 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8569212/

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