2017-03-03 241 views
0

我从aws获取图像并将它们分配给QPixmap变量。我想将他们的信息显示为宽度高度和文件大小。但是我找不到获取文件大小的方法。我将它们转换为QImage,然后使用byteCount方法,尽管图像的文件大小为735字节,但它返回了3952个字节,它等于width * height * 4。如何找到读取为QPixmap的图像的文件大小?

+0

如果您从aws获取图像数据,您已经知道文件大小(即'len(data)')。 – ekhumoro

回答

1

将图片加载到QPixmapQImage时,它将从文件格式转换为内部表示。因此,QImage.byteCount()返回用于存储图像的字节数。正如你已经提到的,它等于宽*高* 4。这里,数字4是颜色深度(每像素字节数)。你可以通过QImage.depth()方法得到它。请注意,它会返回位数,所以您必须将它除以8以获取字节。如果你想得到文件大小,你可以使用len(data)(如ekhumoro所建议的),或者把它加载到QFile,并且调用size()(如果你有/将它保存在硬盘上)。

相关问题