2011-12-20 16 views
5

QTextEditに、華やかなUTF-8文字、つまり右矢印0x2192と稲妻0x21AFを印刷しています。これは、Ubuntuのような現代的なオペレーティングシステムではうまくいくが、例えば失敗する。フォントはUTF-8文字をサポートしていないようだからWindows XP。代わりに、悪名高い小さなプレースホルダーの四角形が引かれます。QFontが特定のUTF-8文字をサポートしているかどうかを確認してください

QFontインスタンスの現在のフォントが特定の文字をサポートしているかどうかを調べる方法があるので、右矢印のように " - >"のような単純な文字に戻すことはできますか?

私はQt 4.8にQRawFontクラスがあることを発見しました。本当にQRawFont :: supportsCharacter()メソッドがありますが、これは私が欲しいものですが、私は使用できません。最高で4.7。 私は実装を見て、彼らはQFontEngine :: canRender()を呼び出します。しかし、QFontEngineは外部からアクセスできないクラスのようです。 QFontEngineInfoとQFontEnginePluginは、4.7で見つかる唯一の類似したサウンドクラスですが、私の場合は何も役立たないようです。

答えて

5

canRenderも、QFontMetrics::inFont(QChar)によって呼び出されます。

+0

はい、それです!ありがとう!私は明らかにそのフォントに関連するクラスジャングルで少し失われてしまったので、私はその目立たない方法を逃しました:)。 – DerManu

関連する問題