我用Qimage读取两张jpg图片(2.jpg和00001.jpg)方式如下:
1 QImage qimg;
2 qimg.load(strStartPath);// strStartPath为图片完整路径
结果发现载入2.jpg正常,但载入00001.jpg后,qimg为null
经过后来对比两张图片的二进制文件之后发现00001.jpg其实不是jpg格式的图片,而是PNG图片,如下图:
所以解决方法如下:
1 QFile file(strStartPath);
2 file.open(QIODevice::ReadOnly);
3 QByteArray data = file.readAll();
4 QImage img = QImage::fromData(data);