wxPython: Icon aus base64 decoded Image

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Roland Rickborn

    #1

    wxPython: Icon aus base64 decoded Image

    Hallo zusammen,

    in meine Anwendung ist ein Bild eingebettet und oben in der Leiste soll
    ein Icon erscheinen.
    Ausserdem will ich nur _eine_ Datei ausgeben, also ohne zusärtliche
    Bild-Dateien etc.

    Dazu habe ich das Bild in base64 codiert und als String im Skript
    gespeichert, siehe unten. Beim Ausführen des Skripts wird dieser
    String decodiert, in ein Image umgewandelt und als Bitmap dargestellt.
    Funzt prima.

    # Base64 codiertes Bild, einmalig ausserhalb des Skripts
    import base64
    file = open('smallPic. png',"rb")
    pic = file.read()
    pic_b64 = pic.encode("bas e64")
    # ergibt einen String wie """'iVBORw0KGgo AAAATkSuQmCC\n' """

    # Danach im Skript:
    self.staticImag e =
    wx.ImageFromStr eam(StringIO(pi c_b64.decode("b ase64")))
    self.staticBitm ap =
    wx.StaticBitmap (bitmap=wx.Bitm apFromImage(sel f.staticImage,
    wx.BITMAP_TYPE_ PNG),
    name='staticBit map3', parent=self.pan el1, pos=wx.Point(8,
    96),
    size=wx.Size(16 8, 72), style=0)

    Wie gesagt, funkzt prima!


    Und jetzt das Icon:
    # Base64 codiertes Bild, einmalig ausserhalb des Skripts
    import base64
    file = open('smallIcon .ico',"rb")
    ico = file.read()
    ico_b64 = ico.encode("bas e64")
    # ergibt einen String wie
    """'==123445342 gsgadfgdghsfhsd hxfghxfghTRG>df g\n'"""

    # Danach im Skript:
    icon = base64.b64decod e(ico_b64)
    self.SetIcon(wx .Icon(icon, wx.BITMAP_TYPE_ ICO))

    --Fehler beim Start der Anwendung: "Failed to load icom from the
    file"

    Wo ist der Fehler und was muss ich machen, damit das Icon angezeigt
    wird?

    Besten Dank und schöne Grüsse,
    Roland

    --

    E-Mail-Adresse ist reply-fähig, wird aber nicht gelesen.
    Besser: r_2 bei Ge Em Ix oder hier in der NG

  • Bjoern Schliessmann

    #2
    Re: wxPython: Icon aus base64 decoded Image

    Roland Rickborn wrote:
    Wo ist der Fehler und was muss ich machen, damit das Icon
    angezeigt wird?
    I'm sorry that I can't help you, but you'll probably get more
    answers if you write again in English (this is comp.lang.pytho n).

    Grüße,


    Björn

    --
    BOFH excuse #126:

    it has Intel Inside

    Comment

    Working...