Delphi内的图片缩放的实现

来源:互联网 发布:非零矩阵 编辑:程序博客网 时间:2024/04/28 01:17
procedure ResizeBmp(Src,Dst:String);
var SrcBM,DstBM:TBitMap;
    Rect:TRect;
    NewW,NewH,PicW,PicH:Integer;
    HDivW:Double;
begin
  SrcBM:
=TBitMap.Create;
  SrcBM.LoadFromFile(Src);
  PicW:
=SrcBM.Width;
  PicH:
=SrcBM.Height;
  NewH:
=768;
  NewW:
=1024;
  DstBM:
=TBitMap.Create;
  with DstBM 
do begin
    Width:
=NewW;
    Height:
=NewH;
    Rect.TopLeft:
=Point(0,0);
    Rect.BottomRight:
=Point(NewW,NewH);
    Canvas.Rectangle(
0,0,Width,Height);
    Canvas.StretchDraw(Rect,TGraphic(SrcBM));
    SaveToFile(Dst);
    FreeImage;
    Free;
  end;
end;