GDI + Fehlermeldung

  • Hallo,

    ich komme mit meinem SIG Creator immoment nicht weiter.

    Kann mir mal bitte jemand helfen?

    Script mit Exe und allen Bildern im Anhang.

    Ansonsten hier noch einmal der Script :

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 501, 718, 192, 124, $WS_POPUP)
    $Pic1 = GUICtrlCreatePic("Backgrounds\Simple Sig.jpg", 0, 0, 500, 100, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $Pic2 = GUICtrlCreatePic("Backgrounds\Design Auswahl.jpg", 0, 136, 500, 300, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $v1 = GUICtrlCreateRadio("v1", 16, 112, 41, 17)
    $Es = GUICtrlCreateLabel("Derzeit stehen dir derzeit keine weiteren Designs zur Verfügung.", 88, 112, 400, 17)
    $Pic3 = GUICtrlCreatePic("Backgrounds\Name Auswahl.jpg", 0, 440, 250, 70, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $Input1 = GUICtrlCreateInput("", 264, 464, 25, 21)
    $Input2 = GUICtrlCreateInput("", 296, 464, 25, 21)
    $Input3 = GUICtrlCreateInput("", 328, 464, 25, 21)
    $Input4 = GUICtrlCreateInput("", 360, 464, 25, 21)
    $Input5 = GUICtrlCreateInput("", 392, 464, 25, 21)
    $Input6 = GUICtrlCreateInput("", 424, 464, 25, 21)
    $Input7 = GUICtrlCreateInput("", 456, 464, 25, 21)
    $Pic4 = GUICtrlCreatePic("Backgrounds\level auswahl.jpg", 0, 512, 250, 70, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $Input8 = GUICtrlCreateInput("", 264, 544, 25, 21)
    $Input9 = GUICtrlCreateInput("", 304, 544, 25, 21)
    $Input10 = GUICtrlCreateInput("", 344, 544, 25, 21)
    $Pic5 = GUICtrlCreatePic("Backgrounds\Vorschau Auswahl.jpg", 144, 584, 197, 60, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $Pic6 = GUICtrlCreatePic("Backgrounds\exit.jpg", 296, 656, 197, 60, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $Pic7 = GUICtrlCreatePic("Backgrounds\Generate Auswahl.jpg", 8, 656, 197, 60, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Pic6
    Exit
    Case $Pic5
    GUISETSTATE (@SW_HIDE)
    _GDIPlus_Startup()

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

    Global $hImage_1 = _GDIPlus_ImageLoadFromFile("Data\Design1.jpg")
    Global $hImage_2 = _GDIPlus_ImageLoadFromFile("Data\1.jpg")

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

    Global $iWidth = _GDIPlus_ImageGetWidth($hImage_1) * 96 / _GDIPlus_ImageGetHorizontalResolution($hImage_1)
    Global $iHeight = _GDIPlus_ImageGetHeight($hImage_1) * 96 / _GDIPlus_ImageGetVerticalResolution($hImage_1)

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

    Global $hGui = GUICreate("Test", $iWidth, $iHeight)
    Global $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGui)
    Global $hBmpBuffer = _GDIPlus_BitmapCreateFromGraphics($iWidth, $iHeight, $hGraphics)
    Global $hGfxBuffer = _GDIPlus_ImageGetGraphicsContext($hBmpBuffer)
    _GDIPlus_GraphicsSetSmoothingMode($hGfxBuffer, 2)
    _GDIPlus_GraphicsClear($hGfxBuffer, 0xFF000000)
    GUIRegisterMsg($WM_PAINT, "WM_PAINT")
    GUISetState()

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

    _GDIPlus_GraphicsDrawImage($hGfxBuffer, $hImage_1, 0, 0)

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

    Global $hAttributes = _GDIPlus_ImageAttributesCreate()
    _GDIPlus_ImageAttributesSetColorKeys($hAttributes, 0, True, 0xFFAAAAAA, 0xFFFFFFFF)
    _GDIPlus_GraphicsDrawImageRectRectIA($hGfxBuffer, $hImage_2, 0, 0, 100, 50, 200, 20, 100, 50, $hAttributes)

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

    _GDIPlus_GraphicsDrawImage($hGraphics, $hBmpBuffer, 0, 0)

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

    While 1
    Sleep(10)
    WEnd

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

    Func WM_PAINT($hWnd, $uMsgm, $wParam, $lParam)
    _GDIPlus_GraphicsDrawImage($hGraphics, $hBmpBuffer, 0, 0)
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_PAINT

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

    Func _Exit()
    _GDIPlus_ImageDispose($hImage_1)
    _GDIPlus_ImageDispose($hImage_2)
    _GDIPlus_GraphicsDispose($hGfxBuffer)
    _GDIPlus_BitmapDispose($hBmpBuffer)
    _GDIPlus_GraphicsDispose($hGraphics)
    _GDIPlus_Shutdown()
    Exit
    EndFunc ;==>_Exit
    GUISetState(@SW_SHOW)

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

    EndSwitch
    WEnd

    [/autoit]

    Bitte die Dateien in einen leeren Ordner entpacken , da es sonst nicht funktioniert.

  • Ohh das mit dem Includen habe ich diesmal wohl total vergessen. Danke für die Hilfe.

    Habe es nun alles soweit hinbekommen, jedoch sieht das A nun total bescheuert aus an der Seite.

    Wisst ihr vielleicht, woran es liegt und wie ich das Problem beheben kann?

    Dateien im Anhang. Bitte erst in einen leeren Ordner entpacken.

  • Wenn du einfach nur eine bestimmte Reihe von Farbtönen mit _ColorKeys entfernst, musst du beachten, dass eben nur genau diese Farben entfernt werden. Da die weißen Pixel die um den Buchstaben herum immer noch sichtbar sind einen anderen Farbtoin haben, der nicht zwischen den beiden angegebenen liegt ist das kein Wunder wenn es nachher so aussieht.

  • Du solltest statt jpegs transparente pngs verwenden, dann brauchst du auch keine ColorKeys.