bild drehen

  • so leute...ich hab folgendes vorhaben.....
    ich will dass ich es mit autoit schaffe ein bild zu drehen(mit au3 code oder dll)...das ist mir vollkommen egal....
    hauptsache ist dass ich vorher kein extra prog installieren muss wo dann der rotations befehl an andere Scripte per parameter weiter gegeben wird...sprich wäre sehr praktisch wenn das standartmäßig vorhanden wäre....(sowas wie infranview o.ä. ist NICHT standart!!!!)

    ein paar weitere infos: bildformat(jpg oder bmp), bildgröße (denk mal die bilder sind alle kleiner 5 MB), müsste das bild 90° nach links bzw nach rechs drehen können(180° ergibt sich dann ja draus....) das bild sollte dann ggf auch überspeichert werden(hauptsache es wird gedreht der rest ist ja dann einfacher) (eher spielerei wärs wenn ich dann das bild noch verkleinern könnt aber dass muss nicht sein)

    mir ist grad aufgefallen vll wäre das mit paint möglich...hihi^^ wenn paint das kann müssen die libs ja irgendwo sein....nur wo?
    hat jemand nen tip?
    wäre sehr sehr dankbar dafür.....

    snoozy

    • Offizieller Beitrag

    Kannst ja versuche das von ActiveVB umzusetzen!

  • hi,
    ist zwar ne gute lösung nur weiß ich nicht ganz wie ich das umsetzten könnte :rolleyes:

    hab mich derzeit andersweitig versucht..und zwar das ganze mit paint....da kann man das schick drehen xD

    Spoiler anzeigen
    [autoit]

    $imagepath = "E:\AutoIT\ImageViewer\"
    $imagetitle = "IMAGE2.JPG"
    Run("mspaint "&$imagepath&$imagetitle,"",@SW_HIDE)
    WinActivate($imagetitle)
    Do
    $winstate = WinGetState($imagetitle)
    Sleep(10)
    Until $winstate = 5 ; 1 = Window exists 4 = Window is enabled (4+1)
    Send("^d")
    Do
    $winstate = WinGetState("Bild drehen und spiegeln")
    Until $winstate = 15; 1 = Window exists 2 = Window is visible 4 = Window is enabled 8 = Window is active

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

    WinSetState("Bild drehen und spiegeln","",@SW_SHOW)

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

    Dim $BUTTON[5][2]
    $BUTTON[0][0] = "Horizontal Spiegeln"
    $BUTTON[0][1] = 2
    $BUTTON[1][0] = "Vertikal Spiegeln"
    $BUTTON[1][1] = 3
    $BUTTON[2][0] = "Drehen im Winkel von:"
    $BUTTON[2][1] = 4
    $BUTTON[3][0] = "90°"
    $BUTTON[3][1] = 5
    $BUTTON[4][0] = "180°"
    $BUTTON[4][1] = 6
    $BUTTON[5][0] = "270°"
    $BUTTON[4][1] = 7

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

    $ret = ControlClick ("Bild drehen und spiegeln","","[CLASS:Button; INSTANCE:"&$BUTTON[1][1]&"]","left",1)
    MsgBox(0,"",$ret)

    [/autoit]


    so jetzt hab ich noch ne frage: warum geht das mit dem control click machmal innerhalb von millisekunden und warum dauert das machmal echt mehrere sekunden????????? ich checks nicht....

    thx for help

    snoozy

    PS:gn8 ;)

  • hatte mal das gleich Problem habe das mit dem windows Prog gelöst


    Einmal editiert, zuletzt von Tam0r (22. Mai 2007 um 22:38)

  • Zitat

    Original von th.meger
    Hi,

    hast du mal geguckt, ob es mit ProSpeed geht?

    So long,

    Mega


    ehm hab mir jetzt den ganzen artikel durhcgelsen und hab keine ahnung warum es bei mir nicht geht :/ hab sogar version 3.2.0.0 installiert....bekomm trotzdem immer die fehlermeldung dass der dll-befehl beim rotate nicht gklappt hat..warum auch immer...hier einmal das script..vll könnt ihr mir ja helfen...

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <Prospeed.au3>

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

    HotKeySet("{Esc}","_exit")
    Opt("GUIOnEventMode", 1)

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

    $gui = GUICreate("ProSpeed",800,600,-1,-1,$WS_POPUP)

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

    $X = 0
    $Y = 0
    $Deg = 180

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

    InetGet ( "http://www.autoitscript.com/autoit3/files/graphics/autoit_builder_wall_800x600.jpg" ,"C:\autoit_builder_wall.jpg" )
    $Pic = "C:\autoit_builder_wall.jpg"

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

    Rotate($Pic, $X, $Y, $Deg)

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

    While 1
    Sleep(1000)
    WEnd

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

    Func _exit()
    exit
    EndFunc

    [/autoit]

    @tamOr thx für den vorschlag bin noch nicht dazu gekommen das auszuprobieren :rolleyes: naja troptzdem thx ;)