如何从二进制数据创建QIcon?

时间:2012-08-19 04:00:05

标签: c++ image qt jpeg

我有一个存储一些图像的自定义文件格式。我在程序运行期间将这些图像加载到内存中。图像以二进制格式加载(即它们在磁盘上出现的方式相同)。我知道图像的格式(几乎都是jpeg)。问题是我不知道宽度/高度,但我想显示图像而不将它们写入磁盘上的某个临时文件。有谁知道怎么做?

1 个答案:

答案 0 :(得分:2)

您可以使用实际尺寸

获取qIcon的大小

http://qt-project.org/doc/qt-5.0/qicon.html#actualSize

您不必将任何内容写入磁盘,只需要将二进制文件读入QIcon之类的内容,这样就可以使用QTs方法获取图像的宽度和高度。您只需要将数据放入QT数据结构之一。

查看QImage和QPixmap,我认为他们有二进制读取方法。或者您可以在此处查看此SO帖子:QImage from unsigned char buffer (jpg format)