我在使用SEVEN Pro 64的PC上使用Qt 4.8.6(minGW 32bits)编译了一段代码来打开svg文件(国家地图图像)。
它在Windows 7上正常运行。 当我在装有Windows 8.1或Windows 10的PC上启动exe时,代码会执行,但屏幕上不会显示图像。
因此,为了了解此故障排除,我尝试打开其他格式的图像。使用JPG或PNG,一切都还可以。图像显示在屏幕上!
最后,我在代码中添加一个检查以查看svg文件是否已打开...
QString nom = QFileDialog::getOpenFileName(this,"Select the map...","/Home","Images (*.jpg *.png *.svg)");
if (nom.isEmpty())
return;
bool ok = m_pix.load(nom);//try with image.svg
if (ok)
m_scene->addPixmap(m_pix);//add the pixmap
else
{
status("Image file not loaded!");
return;
}
为什么在打开相同的jpg或png时,Windows 10上没有加载svg文件?
此代码在Seven下工作正常,但在Windows 8或更高版本下无效。
注意:我检查了文件的属性,我也尝试使用兼容模式代码,但没有成功...