问题总结
Qt默认字体微调的锅,在字体小于13号时默认字体微调会使中文看起来非常奇怪。
测试字体为 10pt Microsoft YaHei UI
解决方案
HintingPreference(默认:PreferDefaultHinting)改 PreferNoHinting
其实 PreferFullHinting 也可以解决大部分字体的笔画粘连问题,但是显示某些字体会变得很奇怪。
当然你也可以选择在main函数内全局更改:
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// 设置字体微调
QFont font = a.font();
font.setHintingPreference(QFont::PreferNoHinting);
a.setFont(font);
QtWidgetsApplication2 w;
w.show();
return a.exec();
}