0


我有,
QFontMetrics m_fm(QFont("Arial",14));
m_fm.width("来自项目网络的现有 LAN IP 地址");
返回'297'(在windows上)
谁能告诉我它在linux编译器上返回什么?
如果它在 linux 上有所不同,那为什么会这样呢?
以及我们如何在 Windows 和 linux 上进行相同的字体渲染。

更新:
我有一个 QTableView 单元格,我在其中共同写入来自多个字符串的数据
,我必须在单行中显示 2 行中的数据。(使用 .append("\n"))。
假设列宽是 140,
所以我需要数据以适合单行的 140 像素
因此,我需要像素宽度小于 140 的数据,以便
它可以正确显示。在这种情况下,根据字体(Arial)
,我正在计算
m_fm.width("Existing LAN IP Address from Project Network");
但它在 Linux 中有所不同,因为 windows Arial 字体不可用。
是否有机会在 Linux 系统中不安装 Arial 字体的情况下 获得正确的像素宽度?
提前致谢 !

4

1 回答 1

0

尝试在 main.cpp QFontDatabase 上加载字体。也许你没有得到相同的字体。将字体添加到资源文件。检查屏幕上的 DPI 或在启动应用程序时启用高抗锯齿。

于 2018-10-04T16:22:56.243 回答