这里写目录标题
图片解码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)