我目前正在从qrc文件加载两种字体 . 其中一个是.ttf,另一个是.otf . 当我在Android上测试我的构建时,它们加载并正常工作(尽管加载时间相当长......)
但是,当我在我的iPhone和/或模拟器上测试它时,根本没有任何字体加载 . 他们似乎只是默认回Arial或其他东西 . 此外,只有.otf文件在Windows上正常工作 . .ttf文件默认返回Arial,字符偏移2个字符(因此单词“ok”将为“qm”)
这到底是怎么回事?字体位于:“qrc:/fnt/res/fnt/MuseoSans_500.otf”“qrc:/fnt/res/fnt/museo100-regular.ttf”
我正在使用它来加载字体:
FontLoader {
id: museosans500
source: "qrc:/fnt/res/fnt/MuseoSans_500.otf"
}
FontLoader {
id: museo100
source: "qrc:/fnt/res/fnt/museo100-regular.ttf"
}
访问字体时,我将font.family设置为museosans500.name和museo100.name . 就像我说的,他们在Android上运行良好 . 但是它既不适用于iOS,也只适用于其中一种适用于Windows .
我正在使用Qt Creator 3.4.0和Qt 5.4.1 .
任何帮助深表感谢!
1 回答
所以我没有为Windows解决它,但这是iOS和Android的应用程序 . 基本上我通过main.cpp加载字体,而不是:
最初这实际上并没有奏效 . 但那是因为我将font.family设置为“Museo Sans 500”和“Museo 100”,因为当我要求提供完整的可用字体系列列表时,Windows将在控制台中打印 .
当我打印出Android,Mac和iOS中的字体系列列表时,我实际上分别得到了“Museo Sans”和“Museo” . 将font.family更改为这些字符串工作正常 .
不幸的是我还没有找到适用于Windows的解决方案,但就像我说的那样对我来说无关紧要 .