PySide.QtGui.QImage to Base64

Posted

技术标签:

【中文标题】PySide.QtGui.QImage to Base64【英文标题】: 【发布时间】:2014-03-07 16:21:41 【问题描述】:

为新手问题道歉,但找不到解决方案。您知道 PySide.QtGui.QImage 是转换 base64 图像还是将数据转换为字符串?

我试过了

image_data = base64.b64encode (imageActual)

但我收到此错误

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

谢谢

【问题讨论】:

【参考方案1】:

转换为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')

【讨论】:

我无法从 base64 转换工作。我总是得到一个空字节数组。不知道出了什么问题。数据很好,我在网上试了一下,得到了图片。 @ZohaibZaidi。如果没有看到导致问题的实际数据,就无法真正发表评论。【参考方案2】:

我能够用这个解决我的问题:

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

【讨论】:

以上是关于PySide.QtGui.QImage to Base64的主要内容,如果未能解决你的问题,请参考以下文章

QByteArray to QString

css 纯CSS砌体布局 - https://medium.com/@_jh3y/how-to-pure-css-masonry-layouts-a8ede07ba31a#.fomk5pu69

sql语句中如何将字符类型转换成数字类型?

linq to json

useful website to make profit

python 之sqlalchemy many to many