Непонятное поведение из QFontDatabase
Я пытаюсь загрузить шрифт в свое приложение. Логично, что я хочу загрузить более одного веса шрифта, но здесь возникает проблема.
У меня есть два файла шрифтов, "PFD-Black.ttf" и "PFD-Regular.ttf". Я хочу использовать их оба, поэтому я загружаю их оба, используя этот код:
fontid_regular = QFontDatabase.addApplicationFont("PFD-Regular.ttf")
fontid_black = QFontDatabase.addApplicationFont("PFD-Black.ttf")
Затем я получаю фамилию, вот так:
familyname = fontdb.applicationFontFamilies(fontid_black)[0]
Обратите внимание, что я пытался использовать fontid_regular
как хорошо, но безрезультатно. Затем я пытаюсь использовать шрифт для QLabel:
lab = QLabel("My Font Window")
font = QFont(familyname)
lab.setFont(font)
lab.show()
Это размер моего кода, кроме стандартного импорта и вызова QApplication.exec_().
Это не работает (что может быть очевидно, так как я задаю вопрос об этом по SO), метка отображается шрифтом по умолчанию.
Непонятная часть моей проблемы - когда я закомментирую строку fontid_regular = QFontDatabase.addApplicationFont("PFD-Regular.ttf")
жирный шрифт показывает.
Это некоторый уровень работоспособности (из-за отсутствия лучшего слова), но я не могу использовать обычный шрифт веса. Следует также отметить, что комментирование строки, куда я загружаю "PFD-Black.ttf", не решает проблему.
Обратите внимание, что я видел этот вопрос, но независимо от того, какие мутации я выполняю в своем коде, я не могу заставить это решение работать на меня, поэтому, пожалуйста, не отмечайте этот вопрос как дубликат этого.
1 ответ
Проблема была решена в комментариях выше: оказалось, что была проблема с шрифтом, который я использовал.