我想为我的应用程序添加自定义字体,我已经添加到我的资源文件中.

我的代码如下:
int id = QFontDatabase::addApplicationFont(":/fonts/ae_AlMateen.ttf");
QMessageBox::information(this,"Message",QString::number(id));
Run Code Online (Sandbox Code Playgroud)
也是.qrc文件的内容.
<RCC>
<qresource prefix="/fonts">
<file alias="ae_AlMateen">ae_AlMateen.ttf</file>
</qresource>
</RCC>
Run Code Online (Sandbox Code Playgroud)
但问题是addApplicationFont总是回归-1.
请注意,当更改:/fonts/ae_AlMateen.ttf为直接路径ex:C://ae_AlMateen.ttf它工作正常.
我希望将字体文件与我的应用程序可执行文件集成,以使应用程序不需要附加字体文件.
啊……现在,在你添加了 .qrc 之后,我明白了。很容易解释:
<file alias="ae_AlMateen">ae_AlMateen.ttf</file>
Run Code Online (Sandbox Code Playgroud)
您在 .qrc 文件中添加了别名。如果您删除alias="ae_AlMateen"它将按照我们的预期工作......带有 .ttf 扩展名。