Qt字体在不同系统上具有不同的大小

时间:2013-06-26 12:39:37

标签: linux qt fonts font-size

使用Qt Designer创建ui文件时,出现以下问题:

在不同的Linux系统上打开相同的ui文件会导致不同的字体大小显示。因此,在一个系统上创建的ui文件在使用另一个系统上的Qt Designer打开它们时可能会有太大的字体。这使得文本在许多情况下都不可读。小部件的“点大小”在两个系统上都是相同的,但为了使它们都可读,我必须在当前的一个系统上手动减小Qt Designer中的点大小。 我可以做些什么来确保所有系统上字体的可读性?

二手系统是SLES 10,SLES11,Debian。

3 个答案:

答案 0 :(得分:3)

我遇到过类似的问题。在我们的例子中,它与本地Linux字体设置有关。由于我们无法强制世界上所有计算机使用相同的字体,我们会覆盖应用程序中的字体。

QFont _Font("Tahoma", 8);
QApplication::setFont(_Font);

您应该在创建主窗口之前执行此操作。

我所知道的唯一风险是,如果计算机上没有安装您选择的字体,我相信它会恢复到默认状态。

我希望有所帮助。

答案 1 :(得分:1)

使用void QFont :: setPixelSize(int pixelSize)而不是:: setPointSize。

使用此功能可使字体设备相关。使用setPointSize()或setPointSizeF()以独立于设备的方式设置字体大小。

答案 2 :(得分:0)

我从Windows8迁移到Windows8,字体大小不匹配。 我尝试使用

通过main.cpp强制它
QFont _Font("Tahoma", 8);
_Font.setPixelSize(8);
QApplication::setFont(_Font);

它确实改变了一些项目,但有些没有。我试图检查类配置,但没有发现任何认为会有所帮助。