Drehfunktion von Steffen / 180 / 180 |
Hier ist wieder meine Drehfunktion für Bilder mit beliebiger Hintergrundfarbe (funktioniert jetzt): [code:1:b668894d67]Function drehen(bild, Winkel, Hintergrundrot, Hintergrundgruen, Hintergrundblau) ClsColor Hintergrundrot, Hintergrundgruen, Hintergrundblau Local x0, y0, x1, y1, x2, y2, bild1, bild2 x0 = ImageWidth(bild) y0 = ImageHeight(bild) x1 = Abs(Cos(Winkel) * x0) + Abs(Sin(Winkel) * y0) y1 = Abs(Sin(Winkel) * x0) +Abs(Cos(Winkel) * y0) x2 = Abs(Cos(Winkel) * x1) + Abs(Sin(Winkel) * y1) y2 = Abs(Sin(Winkel) * x1) + Abs(Cos(Winkel) * y1) bild1 = CopyImage(bild) MidHandle bild1 bild2 = CreateImage(x2, y2) SetBuffer ImageBuffer(bild2) Cls DrawBlock bild1, x2 / 2, y2 / 2 FreeImage bild1 MidHandle bild2 RotateImage bild2, Winkel bild1 = CreateImage(x1, y1) HandleImage bild2, 0, 0 CopyRect ((ImageWidth(bild2) - x1) / 2), ((ImageHeight(bild2) - y1) / 2), x1, y1, 0, 0, ImageBuffer(bild2), ImageBuffer(bild1) FreeImage bild2 Return bild1 End Function[/code:1:b668894d67] |