0

img2pyで生成された画像でwxPythonのGIFAnimationCtrl(ファイルではなくファイル名が必要)を使用する方法はありますか?

4

1 に答える 1

1

PyEmbeddedImage と img2py.py についてはわかりませんが、Python ソース コードにアニメーションを埋め込む方法を見つけました。

gif_img_base64 = (
  "R0lGODlhEAAQAPQAAP///wAAAPDw8IqKiuDg4EZGRnp6egAAAFhYWCQkJKysrL"
  "6+vhQUFJycnAQEBDY2NmhoaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
  ...
  "PAqFgYy02xkSaLEMV34tELyRYNEsCQyHlvWkGCzsPgMCEAY7Cg04Uk48LAsDhR"
  "A8MVQPEF0GAgqYYwSRlycNcWskCkApIyEAOwAAAAAAAAAAAA=="
  )

a = wx.animate.GIFAnimationCtrl(self, -1, '') # The control

a2 = wx.animate.Animation() # The data
data = base64.b64decode(gif_img_base64)
a2.Load(cStringIO.StringIO(data))
a.SetAnimation(a2) # Bind the data and the control

a.GetPlayer().UseBackgroundColour(True)
a.Play()

変数 gif_img_base64 は、アニメーション付きの GIF ファイルの base64 でエンコードされたコンテンツです。コードを作成するためのヘルパー プログラム:

import sys, base64
data = sys.stdin.read()
s = base64.b64encode(data)
print 'gif_img_base64 = ('
while s:
  print '  "' + s[:62] + '"'
  s = s[62:]
print '  )'
于 2013-03-27T09:03:09.580 に答える