[英]Qt cant load any file QImage
这是我的代码:
QImage cover(":/Images/cover-placeholder.jpg");
if (cover.isNull()) {
cout << "File load Error!" << endl;
}
无论我上传哪个文件,它总是会引发错误。 我也试过写文件的绝对路径,它仍然给出错误。 我也试过这段代码:
QString fileName = QFileDialog::getOpenFileName();
QImage temp;
if (!temp.load(fileName)) {
cout << "Cant load" << endl;
}
它也不起作用。 问题是什么?
qrc 文件:
<RCC>
<qresource prefix="/">
<file>Images/cover-placeholder.jpg</file>
</qresource>
</RCC>
有些从网上下载的图片后缀与格式不对应,QImage使用后缀来检测图片的类型,所以我建议验证后缀是否是相同的格式。
要获取 QImage 的加载原因,必须使用 QImageReader:
QImageReader reader("/fullpath/of/cover-placeholder.jpg");
QImage img = reader.read()
if(img.isNull())
{
qDebug() << reader.errorString();
}
此外,如果您正在部署 Qt 应用程序,您应该在 app_dir/imageformats 目录下部署图像格式插件。 插件有:qjpeg.dll、qgif.dll、qsvg.dll等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.