由于在回答/评论中,无论是在这里还是在链接的帖子中都没有提到QtDesigner standalone(5.6)-关于系统中未安装的字体:
我使用了一个免费的字体AutobusBold.ttf。首先,这个文件的路径需要在你的qrc文件中结束,主要是为了Python的缘故——你可以使用资源浏览器/编辑资源(铅笔)来完成这项工作;在.qrc文件中会出现这样的结果:myfont/AutobusBold.ttf
如果在Windows上用fontview.exe打开.ttf文件,您将看到它的名称是Autobus Bold-带空格。在
然后您需要在QtDesigner中关闭.ui文件,然后转到“设置/其他字体…”。。。在QtDesigner中(如果打开了一个.ui文件,则此选项将灰显);在那里单击+(“添加字体文件”),找到.ttf字体文件,并通过选择它并单击“打开”来添加它。从现在起,只要在QtDesigner中打开字体对话框,就会出现这种字体,并与系统字体混合使用。在
然后,重新打开.ui文件,找到要应用此字体的元素并将其选中,在其styleSheet选项中单击三个点,然后在生成的对话框窗口中,单击“添加字体”-将显示字体对话框,其中包含所有系统字体,但也会显示自定义字体;选择它,你会得到这样的.qss节:font: 75 8pt "Autobus Bold";
前75个可能是font-weight,你也可以删除它,它的工作原理是一样的;8pt是font-size,而“Autobus Bold”是font-family。请注意,font-family中的字体名是用引号引起来的,因为它在名称中有一个空格-没有引号,一切都会失败!在
然后,如果您编写extern.qss文件,您可以将font:节重写为单独的font-family(使用带引号的字体名!)和font-size节-而且它的工作原理应该是一样的。在
当然,如果您想将所有这些都转移到Python中,那么您需要另外addApplicationFont,如@GPPK的答案中所述。在