从编码获取图片-base64
用Python制作的小程序,如果里面有一些图片的话,打包成exe文件时比较麻烦。下面是解决这个问题详细内容。
下面是以PyQt5从一个.py文件获取数据,生成Qpixmap对象为例。
- 将图片编码
import base64
with open("./icon2/file.png",'rb') as png:
byte = png.read()
enc = base64.b64encode(byte)
with open("tt.py",'wb') as tt:
tt.write(enc)
以上转换完的内容存入 tt.py文件
文件内容: iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAAC
- 修改tt.py文件
将上面生成的tt.py文件内容做成一个变量
png1 = "iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAAC"
- 将图片解码
import base64
from PyQt5.QtGui import QPixmap
from tt import png1
pngData = base64.b64decode(png1)
- 生成Qpixmap对象
pix = QPixmap()
pix.loadFromData(pngData))
以上内容写的比较简单,希望对大家有帮助。