Я печатаю некоторые причудливые символы UTF-8, то есть стрелку вправо 0x2192 и молнию 0x21AF, в QTextEdit. Это прекрасно работает в современной операционной системе, такой как Ubuntu, но не работает, например. Windows XP, поскольку шрифты, похоже, не поддерживают эти символы UTF-8. Вместо этого нарисованы печально известные маленькие квадраты-заполнители.
Есть ли способ узнать, поддерживает ли текущий шрифт экземпляра QFont данный символ, чтобы я мог вернуться к более простым символам, таким как "->" для стрелки вправо?
Я обнаружил, что в Qt 4.8 есть класс QRawFont, у которого действительно есть метод QRawFont :: supportsCharacter (), который делает именно то, что я хочу, но сейчас я не могу использовать 4.8, я на 4.6 или 4.7 в лучшем случае.
Я посмотрел на реализацию, и они вызывают QFontEngine :: canRender (). Тем не менее, QFontEngine представляется классом, недоступным извне. Единственные похожие классы звучания, которые я могу найти в 4.7, это QFontEngineInfo и QFontEnginePlugin, оба, похоже, не дают ничего полезного в моем случае.