python图片模块_将图片转换为Python模块

在wxPython中使用图片很简单.一般你可以找一个图片文件,然后在程序中使用它就行了.这样的好处是替换编辑都方便.但是在许多wxPython程序中,如Demo,TaskCoach中都使用了另一种方式,那就是将图片转换为Python的模块,这样就可以在程序中象模块一样来调用图片了.这样的好处是可以将图片模块放在Python路径中,在哪里都可以使用,而不是象图片文件还需要处理目录了.

将图片转换为Python模块在安装完wxPython之后,会在Python的安装目录下scripts子目录中有img2py的脚本,它可以做这件事.在命令行输入(Windows下执行的是img2py.bat):

img2py

可以看到它的帮助信息.其中比较有用的是:

-n name,它可以给生成的函数加一个名字,以方便调用.

-a,它可以将生成的代码追回到指定的文件后.

不过好象一次只能处理一个文件.下面是一个简单的示意:

img2py -n Python python.gif image.py

img2py -a -n Logo logo.ico image.py

最后生成的image.py文件中的内容就是(部分简略):

#-----------------------------------------------------------------

# This file was generated by C:\Python24\Scripts\img2py

#

from wx import ImageFromStream, BitmapFromImage

import cStringIO, zlib

def getPythonData():

return zlib.decompress( '...' )

def getPythonBitmap():

return BitmapFromImage(getPythonImage())

def getPythonImage():

stream = cStringIO.StringIO(getPythonData())

return ImageFromStream(stream)

#-----------------------------------------------------------------

def getLogoData():

return zlib.decompress( '...' )

def getLogoBitmap():

return BitmapFromImage(getLogoImage())

def getLogoImage():

stream = cStringIO.StringIO(getLogoData())

return ImageFromStream(stream)

这样在程序中就可以通过getPythonBitmap()和getLogoBitmap()来得到Python.gif和Logo.ico这两幅图片了.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值