Python PySide.QtGui.QImage到Base64

Python PySide.QtGui.QImage到Base64,python,base64,pyside,qtgui,qimage,Python,Base64,Pyside,Qtgui,Qimage,对于新手提出的问题表示歉意,但无法找到解决方案。您知道PySide.QtGui.QImage是转换base64图像还是将数据转换为字符串 我试过这个 image_data=base64.b64编码(imageActual) 但是我得到了这个错误 TypeError:必须是字符串或缓冲区,而不是PySide.QtGui.QImage 谢谢转换为base64: img = QtGui.QImage('image.png') ba = QtCore.QByteArray() b

对于新手提出的问题表示歉意,但无法找到解决方案。您知道PySide.QtGui.QImage是转换base64图像还是将数据转换为字符串

我试过这个

image_data=base64.b64编码(imageActual)

但是我得到了这个错误

TypeError:必须是字符串或缓冲区,而不是PySide.QtGui.QImage

谢谢

转换为base64:

    img = QtGui.QImage('image.png')
    ba = QtCore.QByteArray()
    buffer = QtCore.QBuffer(ba)
    buffer.open(QtCore.QIODevice.WriteOnly)
    img.save(buffer, 'PNG')
    base64_data = ba.toBase64().data()
从base64转换:

    ba = QtCore.QByteArray.fromBase64(base64_data)
    img = QtGui.QImage.fromData(ba, 'PNG')

我能够使用以下方法解决我的问题:

image_64_decode = base64.decodestring(base64Data)
image = QtGui.QImage()
image.loadFromData(image_64_decode , 'PNG')

我无法将base64转换为工作模式。我总是得到一个空字节数组。不知道出了什么问题。数据很好,我在网上试过,得到了图像。@ZohaibZaidi。如果看不到导致问题的实际数据,就无法进行真正的评论。