有一种方法可以获取 Qml 中已解决的字体系列 https://doc-snapshots.qt.io/qt5-5.9/qml-qtquick-text.html#fontInfo.family-prop
但是此属性仅在 Qt5.9 中可用,我们如何获取旧版本(准确地说是 Qt 5.4)的此信息
最佳答案
在 Qt 5.9 及更高版本中完成此操作的方式是通过嵌入 QFontInfo
在 Text
对象中,并向 QML 返回一个 JS 对象,并将 QFontInfo
的所有相关字段作为该对象的键。
我在以前的版本中添加此功能的方法是使用 Q_INVOKABLE QVariantMap fontInfo(const QFont& font)
创建一个新的 QObject
类。
此函数将从字体构造一个 QFontInfo
,并用您需要的相关信息填充 QVariantMap
。
通过 qmlRegisterSingletonType()
注册它以便能够在 QML 中使用它。
然后您可以像在 QML 中一样使用它:
Text {
property var fontInfo: FontUtils.fontInfo(font)
}
关于qt - Qml 得到解析的字体系列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50391678/