Mac OSX 中的文本大小比使用 Qt 的 Windows 小。我想在任何地方都有相同的尺寸
Posted
技术标签:
【中文标题】Mac OSX 中的文本大小比使用 Qt 的 Windows 小。我想在任何地方都有相同的尺寸【英文标题】:Texts' size are smaller in Mac OSX than Windows with Qt. I would like to have the same size everywhere 【发布时间】:2017-04-17 19:15:46 【问题描述】:我编写了一个 Qt 应用程序,它带有一个使用 Qt 样式表定制的 GUI。我在所有平台(Windows、Linux 和 Mac)上都使用了 Windows 的样式,但在 Mac OSX 中文本的大小更小。我认为dpi不同,但我不确定。而且我希望在 Qt / Windows 中到处都有相同的文本大小。你知道怎么做吗?在 C++ 中还是在 Qt 样式表中?
【问题讨论】:
【参考方案1】:如果你曾经在 C++ 代码中使用过字体,你会想到这一点:
Font font(..., int size, ...)
// define font offset based on operating system
#ifdef _WIN32
#define OFFSET 0
#elif __APPLE__
#define OFFSET 2
#endif
return Font(..., size + OFFSET, ...);
// function will return a font that is 2 pts larger on Mac than on Windows
这是伪代码;尝试使用 Qt 字体对象而不是我假设的 Font
类和构造函数。然后,不用调用 Qt 字体构造函数,你可以使用这个函数来创建一个 Qt 字体对象。
或者,如果您正在更改按钮的字体大小,例如:
#ifdef _WIN32
#define OFFSET 0
#elif __APPLE__
#define OFFSET 2
#endif
QFont font = ui->pushButton->font();
font.setPointSize(16 + OFFSET);
ui->pushButton->setFont(font);
【讨论】:
这段代码放在哪里?我的应用程序中的所有内容都在 Qt 样式表中 我在帖子中做了一个补充,展示了如何手动设置按钮的字体(例如)。 我在***上找到了解决方案。我可以更改 qt 样式表中的“font-size”属性以上是关于Mac OSX 中的文本大小比使用 Qt 的 Windows 小。我想在任何地方都有相同的尺寸的主要内容,如果未能解决你的问题,请参考以下文章
在 mac osx 上的 Qt 4.7 中使用光栅图形会导致内存泄漏?
通过 Qt (mac - OSX) 的 AWS 查询没有得到任何结果