Qt5.8移植到arm335x上字体显示异常问题
永不懂的黑 2018-08-22 11:56:29 我的板子分辨率是1024x600,物理尺寸154x92单位cm。现在问题是这样的,当我的环境变量
配置为下如下
export QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0:size=1024x600:mmsize=154x92:offset=0x0:tty=/dev/tty1
Qt应用程序部分为
int main(int argc, char *argv[])
{
// QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QApplication a(argc, argv);
QWidget pDevice;
qDebug() << "logical" << pDevice.logicalDpiX() << pDevice.logicalDpiY();
qDebug() << "physical" << pDevice.physicalDpiX() << pDevice.physicalDpiY();
myUiloader loader;
QFile file("./Scrip.ui");
file.open(QFile::ReadOnly);
loader.addPluginPath("./");
//qDebug() << "pluginPaths:" << loader.pluginPaths();
//auto *Uiwidget = qobject_cast<ICDButton *>(loader.load(&file));
QWidget * w= loader.load(&file);
file.close();
w->show();
return a.exec();
}
此时交叉编译后,在板子上运行打印信息为logical2 169 166 physical2 169 166
根据dpi的计算方式确实是169 166,但是这时动态加载ui界面文件字体显示异常偏大,并不是所见所得,而当我修改配置
export QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0:size=1024x600:**mmsize=169x166**:offset=0x0:tty=/dev/tty1后
运行Qt应用程序,打印信息变成logical 154 92 physical 154 92,此时所有字体显示正常(按照qt官网说明mmsize设置应该是mmsize=154x92才是对的,这是显示才应该正常)请问这可能是什么原因?本人初学Qt,求大神解答