zu skalieren.
Beispiel für Höhenberechnung
Code: Alles auswählen
;Programmierer: Tommy
;Geeignet: Für Anfänger
;Lizenz: Code kann frei benutzt, verändert, verteilt werden, keine Namensnennung notwendig
; Übergebene Breite und Hoehe werden proportional vergroessert oder verkleinert
; Entweder newWidth oder newHeight als neue Groesse angeben
; das andere #PB_Any
Procedure PropSize(oldWidth, oldHeight, newWidth, newHeight = #PB_Any)
If newHeight = #PB_Any
ProcedureReturn newWidth * oldHeight / oldWidth
Else
ProcedureReturn newHeight * oldWidth / oldHeight
EndIf
EndProcedure
; - Beispiel als Bild -
CreateImage(0, 200, 100, 24, RGB(0, 0, 255))
Define event
OpenWindow(0, 0, 0, 700, 400, "", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
TextGadget(#PB_Any, 50, 50, 200, 20, "Alte Größe")
TextGadget(#PB_Any, 300, 50, 200, 20, "Neue Größe")
ImageGadget(0, 50, 100, ImageWidth(0), ImageHeight(0), ImageID(0))
ImageGadget(1, 300, 100, 0, 0, 0)
ResizeImage(0, 350, PropSize(ImageWidth(0), ImageHeight(0), 350))
SetGadgetState(1, ImageID(0))
Repeat
event = WaitWindowEvent()
Until event = #PB_Event_CloseWindow
Code: Alles auswählen
;Programmierer: Tommy
;Geeignet: Für Anfänger
;Lizenz: Code kann frei benutzt, verändert, verteilt werden, keine Namensnennung notwendig
; Übergebene Breite und Hoehe werden proportional vergroessert oder verkleinert
; Entweder newWidth oder newHeight als neue Groesse angeben
; das andere #PB_Any
Procedure PropSize(oldWidth, oldHeight, newWidth, newHeight = #PB_Any)
If newHeight = #PB_Any
ProcedureReturn newWidth * oldHeight / oldWidth
Else
ProcedureReturn newHeight * oldWidth / oldHeight
EndIf
EndProcedure
; - Beispiel als Bild -
CreateImage(0, 200, 100, 24, RGB(0, 0, 255))
Define event
OpenWindow(0, 0, 0, 700, 400, "", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
TextGadget(#PB_Any, 50, 50, 200, 20, "Alte Größe")
TextGadget(#PB_Any, 300, 50, 200, 20, "Neue Größe")
ImageGadget(0, 50, 100, ImageWidth(0), ImageHeight(0), ImageID(0))
ImageGadget(1, 300, 100, 0, 0, 0)
ResizeImage(0, PropSize(ImageWidth(0), ImageHeight(0), #PB_Any, 50), 50)
SetGadgetState(1, ImageID(0))
Repeat
event = WaitWindowEvent()
Until event = #PB_Event_CloseWindow