problem Speicherung *.bmp

  • Hi Leute, mein erster Post *freu* :D also erstmal Hallöchen ;)

    hab gleich schon ne Frage und zwar soll das Skript das Bitmap skaliert abspeichern... bin echt am verzweifeln! Bitte um Hilfe!

    [autoit]

    #include <GDIPlus.au3>

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

    _scale()Func _scale() $hImage = _GDIPlus_BitmapCreateFromFile ( @ScriptDir & "/Data/2.bmp" ) $hScaleImage = _GDIPlus_ImageScale ( $hImage, 0.5, 0.5) $hScaleImage = _GDIPlus_BitmapCreateFromHBITMAP($hScaleImage) _GDIPlus_ImageSaveToFile ( $hScaleImage, @ScriptDir & "/Data/22.bmp" )EndFunc

    [/autoit]


    Gruß derrod

  • Bitte achte in Zukunft darauf, dass dein Quellcode auch für andere lesbar ist, nachdem du ihn in den Beitragseditor kopiert hast. ;)
    Des weiteren, bitte gib uns in Zukunft detailliertere Problembeschreibungen. In deinem Beitrag ist noch nicht mal vermerkt, dass etwas nicht funktioniert. :rolleyes:
    Ich bin mir nicht sicher, wie du darauf gekommen bist, aber diese Funktion ist für deine Zwecke völlig fehl am Platz: $hScaleImage = _GDIPlus_BitmapCreateFromHBITMAP($hScaleImage)
    Eigentlich benutzt man BitmapCreateFromHBITMAP um ein GDIPlus Bitmap Objekt aus einem GDI32 Bitmap Objekt zu erzeugen. $hScaleImage ist aber bereits eine mit GDIPlus kompatible Bitmap und kann dementsprechend auch direkt an ImageSaveToFile übergeben werden.
    Ich empfehle dir als Anfänger, die Beispiele in der AutoIt-Hilfe anzuschauen. Dann wüsstest du auch, dass man die von GDIPlus erzeugten Bitmaps wieder aus dem Arbeitsspeicher entfernen sollte, wenn sie nicht mehr benötigt werden :P.

  • Wenn du nur kurz Google gefragt hättest du z.B. das hier gefunden: GDI+ scale images

    Das ist nur mal ein Ergebnis von vielen.

    There's a joke that C has the speed and efficieny of assembly language combined with readability of....assembly language. In other words, it's just a glorified assembly language. - Teh Interwebz

    C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, you blow off your whole leg. - Bjarne Stroustrup
    Genie zu sein, bedeutet für mich, alles zu tun, was ich will. - Klaus Kinski