pyqt图片解码 编码后加载图片

本文介绍了如何使用Python进行图片的Base64编码与解码,包括了将图片文件转换为.py文件的方法,以及如何加载Base64编码的图片到UI组件中。主要涉及了图片读取、Base64编码和解码的关键函数示例。
摘要由CSDN通过智能技术生成

图片解码base64

先将图片经base64,解码成字节码;

def pictopy(picture_names, py_name):
    """
    将图像文件转换为py文件
    :param picture_name:
    """
    write_data = []
    for picture_name in picture_names:
        filename = picture_name.replace('.', '_')
        open_pic = open("%s" % picture_name, 'rb')
        b64str = base64.b64encode(open_pic.read())
        open_pic.close()
        # 注意这边b64str一定要加上.decode()
        write_data.append('%s = "%s"\n' % (filename, b64str.decode()))

	#将解码后的图片字节码保存成 .py文件
    f = open('%s.py' % py_name, 'w+')
    for data in write_data:
        f.write(data)
    f.close()

编码

字节码经base64编码,

 def get_pic(pic_code, pic_name):
     image = open(pic_name, 'wb')
     image.write(base64.b64decode(pic_code))
     image.close()

label 加载图片

    def get_pic_decode(self, pic_code):
        img_b64decode = base64.b64decode(pic_code)
        img_io = io.BytesIO(img_b64decode)
        img = Image.open(img_io)
        pix = img.toqpixmap()
        self.gif_label.setPixmap(pix)
        self.gif_label.setScaledContents(True)

示例

if __name__ == '__main__':
    pics = ["qq.gif", "坐下.gif", "坐起.gif", "行走.gif"]
    pictopy(pics, 'memory_pic')	 # 将pics里面的图片写到 memory_pic.py 中
    print("ok")

	get_pic_decode(qq_gif)
	    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值