Aktuell benutze ich diesen Code
Spoiler anzeigen
#include <GDIplus.au3>
#include <ScreenCapture.au3>
Global Const $GDIP_BLUREFFECT = "{633C80A4-1843-482b-9EF2-BE2834C5FDD4}"
Global Const $GDIP_SHARPENEFFECT = "{63CBF3EE-C526-402c-8F71-62C540BF5142}"
Global Const $GDIP_COLORMATRIXEFFECT = "{718F2615-7933-40e3-A511-5F68FE14DD74}"
Global Const $GDIP_COLORLUTEFFECT = "{A7CE72A9-0F7F-40d7-B3CC-D0C02D5C3212}"
Global Const $GDIP_BRIGHTNESSCONTRASTEFFECT = "{D3A1DBE1-8EC4-4c17-9F4C-EA97AD1C343D}"
Global Const $GDIP_HUESATURATIONLIGHTNESSEFFECT = "{8B2DD6C3-EB07-4d87-A5F0-7108E26A9C5F}"
Global Const $GDIP_LEVELSEFFECT = "{99C354EC-2A31-4f3a-8C34-17A803B33A25}"
Global Const $GDIP_TINTEFFECT = "{1077AF00-2848-4441-9489-44AD4C2D7A2C}"
Global Const $GDIP_COLORBALANCEEFFECT = "{537E597D-251E-48da-9664-29CA496B70F8}"
Global Const $GDIP_REDEYECORRECTIONEFFECT = "{74D29D05-69A4-4266-9549-3CC52836B632}"
Global Const $GDIP_COLORCURVEEFFECT = "{DD6A0022-58E4-4a67-9D9B-D48EB881A53D}"
_GDIPlus11_Startup()
If @error Then Exit MsgBox(0x10, "Error", "GDIPlus v1.1 is not installed")
Local $hGUI, $hGraphics, $hImage, $hBlurredImage, $hEffect, $file
FileDelete(@TempDir & "\screen.jpg")
_ScreenCapture_Capture(@TempDir & "\screen.jpg", 0,0, -1,-1, False)
$file = @TempDir & "\screen.jpg"
If @error Then Exit
$hImage = _GDIPlus_ImageLoadFromFile($file)
$hGUI = GUICreate("GDI+ v1.1 Demo Blur", _GDIPlus_ImageGetWidth($hImage), _GDIPlus_ImageGetHeight($hImage))
GUISetState()
$hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)
$hEffect = _GDIPlus_EffectCreate($GDIP_BLUREFFECT)
$hBlurredImage = _GDIPlus_BitmapCreateWithEffect($hImage, $hEffect)
_GDIPlus_GraphicsDrawImage($hGraphics, $hBlurredImage, 0, 0)
$hBitmap = _GDIPlus_BitmapCreateFromGraphics(_GDIPlus_ImageGetWidth($hImage), _GDIPlus_ImageGetHeight($hImage), $hGraphics)
$hBuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
Local $count = 0
$donebut = GUICtrlCreatePic(@ScriptDir & "\erledigt2.gif",(@DesktopWidth/2)-200,@DesktopHeight/2+300,355,197)
GUISetState()
Do
$count += 1
_GDIPlus_GraphicsDrawString($hGraphics,"testring #" & $count,(@DesktopWidth/2)-300,@DesktopHeight/2)
GUISetState()
Sleep(1000)
Until GUIGetMsg() = -3
was aber logischerweise nicht funktioniert, weil die Strings sich immer überschreiben (überlappen) und dadurch unleserlich werden.
Nun ist meine Frage, wie ich denn einen mit _GDIPlus_GraphicsDrawString erstellten String entferne oder ändere,
ohne die ganze GDI+ Umgebung mitzulöschen (was die bisherigen Befehle getan haben), wie z.bsp. der verschwommene Screenshot in meinem Skript.
mfg,
Dankeschön