Guten Morgen, ich arbeite momentan an einem Schulprojekt und muss dafür ein Bild drehen. Ich sitze da jetzt schon 3 1/2 Stunden dran und habe langsam keine Zeit mehr.
Mein Problem ist, dass das Bild auf der Stelle gedreht werden soll. Der Mittelpunkt der Matrix liegt aber nicht auf dem gedrehten BIld, sodass sich der Pfeil um einen bestimmten Punkt dreht. GIbt es eine Möglichkeit den Mittelpunkt der Rotation in die Mitte des BIldes zu legen?
Spoiler anzeigen
Func _ImageRotate($hImgZiel, $hImgQuelle, $degree)
$hGraphicsDest = _GDIPlus_ImageGetGraphicsContext($hImgZiel)
$hMatrixRotate = _GDIPlus_MatrixCreate()
$iWidth = _GDIPlus_ImageGetWidth($hImgQuelle)
$iHeight = _GDIPlus_ImageGetHeight($hImgQuelle)
_GDIPlus_MatrixRotate($hMatrixRotate, $degree, "false")
_GDIPlus_GraphicsSetTransform($hGraphicsDest, $hMatrixRotate)
_GDIPlus_GraphicsDrawImage($hGraphicsDest, $hImgQuelle, 0, 0)
_GDIPlus_MatrixDispose($hMatrixRotate)
EndFunc ;=>_ImageRotate() (Quick and Dirty)
€dit: Der Sinn: Ein Pfeil soll mit einer beliebigen Drehung auf ein anderes Bild an eine beliebige Koordinate gemalt werden.