Verfasst: 05.06.2006 14:44
Hab gesucht nach Seitenverhältniss und Aspect Ratio, hab aber nichts bis auf Schnipsel die viel zu hoch für mich sind gefunden. 

Das deutsche PureBasic-Forum
https://www.purebasic.fr/german/
Code: Alles auswählen
; Resize Image with Aspect Ratio
; Thorsten Hoeppner
; PureBasic V4
;
Procedure ResizeImgAR(ImgID.l,Width.l,height.l)
Define.l OriW, OriH, w, h, oriAR, newAR
Define.f fw, fh
OriW=ImageWidth(ImgID)
OriH=ImageHeight(ImgID)
If (OriH > OriW And height < Width) Or (OriH < OriW And height > Width)
Swap Width, height
EndIf
; Calc Factor
fw = Width/OriW
fh = height/OriH
; Calc AspectRatio
oriAR = Round((OriW / OriH) * 10,0)
newAR = Round((Width / height) * 10,0)
; AspectRatio correct?
If oriAR = newAR
w = Width
h = height
ElseIf OriW * fh <= Width
w = OriW * fh
h = OriH * fh
ElseIf OriH * fw <= height
w = OriW * fw
h = OriH * fw
EndIf
ResizeImage(ImgID,w,h,#PB_Image_Smooth)
EndProcedure
LoadImage(1, "C:\Testbild.jpg")
ResizeImgAR(1,400,300)