Bild drehen
Verfasst: 24.08.2005 03:17
Morgen Jungs und Mädels,
habe hier einen Code gefunden, der ein Bild dreht. Allerdings habe ich keinen Plan, wo ich den Code änderen muss, damit das bild nur um 45° gedreht wird und nicht um 270°.
In welcher Zeile muss ich den da Änderungen vornehmen?
Liebe Grüße,
Simon
habe hier einen Code gefunden, der ein Bild dreht. Allerdings habe ich keinen Plan, wo ich den Code änderen muss, damit das bild nur um 45° gedreht wird und nicht um 270°.
In welcher Zeile muss ich den da Änderungen vornehmen?
Liebe Grüße,
Simon
Code: Alles auswählen
; German forum: http://robsite.de/php/pureboard/viewtopic.php?t=1596&highlight=
; Author: Andreas
; Date: 05. July 2003
#Window_0 = 0
#Gadget_0 = 0
#Gadget_1 = 1
Procedure Rotate(Image$)
Image1Dc = CreateCompatibleDC_(0)
Image1 = LoadImage_(0,Image$,0,0,0,$2050)
OldObject = SelectObject_(Image1DC,Image1)
GetObject_(Image1,SizeOf(BITMAP),bmp.BITMAP)
Image2Dc = CreateCompatibleDC_(0)
Image2 = CreateCompatibleBitmap_(Image1DC,bmp\bmHeight,bmp\bmWidth)
SelectObject_(Image2DC,Image2)
ia = bmp\bmHeight
While ia > 0
i = 0
While i < bmp\bmWidth
BitBlt_(Image2DC,bmp\bmHeight-ia,i,1,1,Image1DC,i,ia,#SRCCOPY)
i = i + 1
Wend
ia = ia - 1
Wend
CreateImage(2,bmp\bmHeight,bmp\bmWidth)
Windc = StartDrawing(ImageOutput())
StretchBlt_(WinDC,0,0,bmp\bmHeight,bmp\bmWidth,Image2DC,0,0,bmp\bmHeight,bmp\bmWidth,#SRCCOPY)
StopDrawing()
ReleaseDC_(0,Image1DC)
DeleteObject_(Image1)
ReleaseDC_(0,Image2DC)
DeleteObject_(Image2)
EndProcedure
Procedure Open_Window_0()
If OpenWindow(#Window_0, 381, 90, 313, 556, #PB_Window_SystemMenu | #PB_Window_TitleBar , "New window ( 0 )")
If CreateGadgetList(WindowID())
ImageGadget(#Gadget_0, 5, 5, 300, 200, UseImage(0))
ImageGadget(#Gadget_1, 60, 245, 0, 0,0)
EndIf
EndIf
EndProcedure
font = LoadFont(0, "Arial", 40)
CreateImage(0,300,200)
StartDrawing(ImageOutput())
DrawingFont(font)
Locate(100,100)
DrawText("AUTO")
StopDrawing()
Open_Window_0()
SaveImage(0,"~~temp.bmp",#PB_ImagePlugin_BMP)
rotate("~~temp.bmp")
DeleteFile("~~temp.bmp")
SetGadgetState(#Gadget_1,UseImage(2))
Repeat
Until WaitWindowEvent()=#PB_Event_CloseWindow
; ExecutableFormat=Windows
; FirstLine=1
; EnableX