在pyqt上显示嵌入的图像?

mu0hgdu0  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(479)

假设我的脚本中有一个图像的base-64代码,如下所示:

EmbeddedCode = """INSERTCODEHERE.....
.....EXAMPLEEXAMPLE"""

如果我能这样解码:

EmbeddedCode.decode('base64')

那么如何在pyqt4 gui中显示它呢

pic = QtGui.QLabel(self)
pic.setGeometry(0, 0, 512, 512)
pic.setPixmap(QtGui.QPixmap(IMAGE PATH GOES HERE))

最好不用 open('image.jpg','w') ,如果没什么要求的话。
注意:我使用嵌入图像是因为我真的不希望有一个“资源”文件夹。我处理的垃圾越少越好。

ecbunoof

ecbunoof1#

使用qpixmap的loadfromdata方法:

from PyQt4 import Qt,QtGui,QtCore
import base64

# "b64_data" is a variable containing your base64 encoded jpeg

app = QtGui.QApplication([])
w = QtGui.QWidget()
pic = QtGui.QLabel(w)
pm = QtGui.QPixmap()
pm.loadFromData(base64.b64decode(b64_data))
pic.setPixmap(pm)

w.show()
app.exec_()

相关问题