图片转化成位数据

把图片变成数据

有时程序需要加载本地图片,然后打包的时候就很不方便,所以wxPython支持img2png.py、img2py.py、img2xpm.py等工具来支持这种操作,但是我调用的时候一直出错,在网上查了很多方式最后找到了解决方案:

1
2
3
4
5
6
# imageToBite.py
import base64
with open('dna049.png', 'rb') as f:
bData = base64.b64encode(f.read())
pData = bData.decode()
print(pData)

这段代码就是把图片变成数据bite。 相应的修改图片就可以换着用了,如果很多就批处理自己照样写。

然后在命令行执行

py imageToBite.py > a.txt

就可以把数据存下来,然后复制到下面程序的data中就行了。

然后在wxPython框架下

1
2
from wx.lib.embeddedimage import PyEmbeddedImage
bitmap = PyEmbeddedImage(data).GetBitmap()

就可以咯

如有帮助,烦请资瓷(一块也是爱0.0)