一个TBITMAP类,导入.BMP文件,源文件大小为1024*768我想把它的大小缩小为640*480并保存成文件,怎么弄?

解决方案 »

  1.   

    如下内容可将Image1中的图片缩小或者放大
    procedure TForm1.Button1Click(Sender: TObject);
    var
      bitmap:TBitmap;
    begin
      //缩小到窗体
      Canvas.StretchDraw(rect(0,0,Image1.Width div 2,Image1.Height div 2),
                         Image1.Picture.Graphic);
      //缩小到文件
      bitmap:=TBitmap.Create;
      bitmap.Width:=Image1.Width div 2;//宽度缩小一半,你可直接天数字
      bitmap.Height:=Image1.Height div 2;//高度缩小一半
      bitmap.Canvas.StretchDraw(bitmap.Canvas.ClipRect,Image1.Picture.Graphic);
      bitmap.SaveToFile('F:\1.bmp');
      bitmap.Free;
    end;
      

  2.   

    扩大一倍
    var
     IncreaseRect: TRect;
    begin
    IncreaseRect := Rect(0,0,image1.Width*2,image1.Height*2); 
    Image2.Canvas.CopyRect(IncreaseRect,image1.Canvas,image1.ClientRect);
    end;