// If you want to control the maximum image size for a field and if necessary be smoothly resized
// YOU NEED DevExpressVCL for the TdxSmartImage unit
// I use this routine in the BeforePost DataSet event
// I hope you enjoy it!
Sample:
// YOU NEED DevExpressVCL for the TdxSmartImage unit
// I use this routine in the BeforePost DataSet event
Code:
procedure ResizeFieldImage(fldField:TField;nWidth,nHeight:integer);
var
oImage:TdxSmartImage;
nW,nH: integer;
begin
oImage:=TdxSmartImage.Create;
oImage.LoadFromFieldValue(fldField.Value);
if (oImage.Width>nWidth) or (oImage.Height>nHeight) then
begin
if oImage.Width > oImage.Height then
begin
nW := nWidth;
nH := (nWidth * oImage.Height) div oImage.Width;
end
else
begin
nH := nHeight;
nW := (nHeight * oImage.Width) div oImage.Height;
end;
oImage.Resize(nW,nH);
TBlobField(fldField).Assign(oImage.GetAsBitmap);
end;
oImage.Free;
end;
Sample: