#qt #fonts
Вопрос:
Я использую Qt 5.4.3.
В своем приложении main()
я звоню QFontDatabase::addApplicationFont("path_to_zen_hei")
и. QFontDatabase::addApplicationFont("path_to_open_sans")
Когда я запрашиваю свои семейства баз данных QFontDatabase, доступны семейства шрифтов Open Sans amp; WenQuanYi Zen Hei. Пока все идет хорошо!
Если я начну свое приложение с QApplication::setFont("Open Sans", 12)
, я получу красивый перевод латинского алфавита, а китайские иероглифы будут отображаться в виде пустых полей. Если я начну свое приложение с QApplication::setFont("WenQuanYi Zen Hei", 12)
китайских иероглифов, они будут отображаться просто отлично, а латинский алфавит будет выглядеть ужасно.
Что я хочу, так это постоянно использовать Open Sans, но при необходимости отображать китайские иероглифы (которые недоступны в Open Sans), чтобы вернуться к шрифту Zen Hei для их отображения.
Мой вопрос в том, что я здесь упускаю — с обоими шрифтами, установленными в качестве шрифтов приложения, и шрифтом приложения, установленным для открытия Sans, почему Qt не возвращается к Zen Hei для рендеринга китайских иероглифов вместо отображения пустых полей?