ImageEn, unit imageenproc

TImageEnProc.Resample

TImageEnProc.Resample


Declaration


procedure Resample(NewWidth, NewHeight: Integer; FilterType: TResampleFilter = rfNone; bMaintainAspectRatio : Boolean = False); overload;
procedure Resample(ScaleBy: Double; FilterType: TResampleFilter = rfNone); overload;


Description


Resizes the current image. Unlike ImageResize, the content of the image will change (i.e. it is stretched to the new size).

Parameter Description
NewWidth New image width in pixels. If NewWidth is -1 then it is calculated automatically, respecting the proportions.
NewHeight New image height in pixels. If NewHeight is -1 then it is calculated automatically, respecting the proportions.
FilterType Resampling interpolation algorithm.
bMaintainAspectRatio Automatically reduces NewWidth or NewHeight to ensure the original proportions of the image are maintained


See also: ResampleTo.


Examples


ImageEnView1.Proc.Resample(50, -1, rfNone); // Resize the image to width of 50 (with height automatically set) without any smoothing algorithm
ImageEnView1.Proc.Resample(-1, 100, rfLanczos3); // Resize the image to height of 100 (with width automatically calculated) and high quality smoothing
ImageEnView1.Proc.Resample(100, 100, rfLanczos3, True); // Resize the image so that it is no higher or wider than 100, but maintains the original aspect ratio (e.g. a 4:3 portrait image would have the new dimensions 100 x 75)
ImageEnView1.Proc.Resample( 0.5, rfFastLinear ); // Resize the image to half its current size with fast, but good quality smoothing