hi,
ich hab eine Frage, ist es möglich viele kleine Bilddateine zu einem Großen zusammenzufügen ?
Ausgangswert wäre ein 2D-Array voller Pfade zu Bildern.
Bilder zu einem großen zusammenfügen
-
- [ gelöst ]
-
M☻x -
12. April 2011 um 18:29 -
Geschlossen -
Erledigt
-
-
Ja ist möglich.
-
Durchaus möglich.
-
über GDI+ oder was wäre ein guter Lösungsansatz ?
-
- Offizieller Beitrag
Hier mal ein Beispiel mit zwei Bildern (GDI+):
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include <GDIPlus.au3>_GDIPlus_Startup()
[/autoit] [autoit][/autoit] [autoit]
$sSourceDir = StringRegExpReplace(@AutoItExe, "(.+\\).+", "$1") & "Examples\GUI\"$hSource1 = _GDIPlus_ImageLoadFromFile($sSourceDir & "msoobe.jpg")
[/autoit] [autoit][/autoit] [autoit]
$hSource2 = _GDIPlus_ImageLoadFromFile($sSourceDir & "mslogo.jpg")
$iX1 = _GDIPlus_ImageGetWidth($hSource1)
$iY1 = _GDIPlus_ImageGetHeight($hSource1)
$iX2 = _GDIPlus_ImageGetWidth($hSource2)
$iY2 = _GDIPlus_ImageGetHeight($hSource2)If $iY1 < $iY2 Then $iY1 = $iY2
[/autoit] [autoit][/autoit] [autoit]$hGui = GUICreate("GDI+", $iX1 + $iX2, $iY1)
[/autoit] [autoit][/autoit] [autoit]
$hPic = GUICtrlCreatePic('', 0,0, $iX1 + $iX2, $iY1)
$hWnd = WinGetHandle($hGui)
GUISetState()$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hWnd)
[/autoit] [autoit][/autoit] [autoit]
$hDestination = _GDIPlus_BitmapCreateFromGraphics($iX1 + $iX2, $iY1, $hGraphic)
$hGraphic1 = _GDIPlus_ImageGetGraphicsContext($hDestination)
_GDIPlus_GraphicsDrawImage($hGraphic1, $hSource1, 0, 0)
_GDIPlus_GraphicsDrawImage($hGraphic1, $hSource2, $iX1, 0)_GDIPlus_ImageSaveToFile($hDestination, @ScriptDir & "\Test.jpg")
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetImage($hPic, @ScriptDir & "\Test.jpg")
Do
Until GUIGetMsg() = -3_GDIPlus_Shutdown()
[/autoit] -
ah danke
