.png auf .bmp zeichnen und speichern...

  • Huhu :)

    Ich habe leider keinen blassen Schimmer von GDI und daher muss ich hier einfach nachfragen, auch verschiedene Threads (bsplw. der hier) helfen mir wegen Unverständnis nich :(

    Habe also ein .bmp (Hintergrund) und ein .png (Vordergrund), die genau dieselben Abmessungen haben. Möchte nun einfach das .png auf den Hintergund zeichnen (sodass auch die verschiedenen Transparenz-Stufen korrekt übernommen werden) und dies in einem neuen .bmp speichern.
    Wie würde denn der komplette Code dafür lauten, inklusive Startups und Beenden der GDI-Prozesse?

    Ich weiß, dass das sehr nach "macht mir mal" klingt, kriegs aber wirklich einfach garnich selbst hin :S


    Hoffe auf Hilfe von Euch, dürfte für manche Profis, UEZ :D , fast lächerlich klingen :P

    Grüße, Andy :rolleyes:


    PS: Im Anhang Beispiel-Image-Files

  • [autoit]

    #include <GDIPLus.au3>
    _GDIPlus_Startup()

    [/autoit][autoit][/autoit][autoit]

    $hPic = _GDIPlus_ImageLoadFromFile(@DesktopDir & "\PNG.png")
    $himg = _GDIPlus_ImageLoadFromFile(@DesktopDir & "\BG.bmp")

    [/autoit][autoit][/autoit][autoit]

    $hGraphic = _GDIPlus_ImageGetGraphicsContext($himg)
    $iX = _GDIPlus_ImageGetWidth($himg)
    $iy = _GDIPlus_ImageGetHeight($himg)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $himg, 0, 0, $iX, $iy)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hPic, 0, 0, $iX, $iy)
    _GDIPlus_ImageSaveToFile($himg, @DesktopDir & "\neues Bild.bmp")
    ;~ sleep (5000)

    [/autoit]


    So klappts bei mir :)