Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   TCanvas сохранение изображения (https://forum.antichat.xyz/showthread.php?t=159780)

ky_kask 28.11.2009 18:53

TCanvas сохранение изображения
 
Кто-нибудь знает как можно сохранить изображение из TForm.Canvas в файл?

код:
Код:

procedure TForm1.Button1Click(Sender: TObject);
var Bitmap:Tbitmap;  MyRect,MyOther: TRect;
begin
Bitmap:=Tbitmap.Create;
MyRect:=Rect(0,0,100, 200);
MyOther := Rect(0,0,100, 200);
Bitmap.Width:=100;
Bitmap.Height:=200;
Bitmap.Canvas.CopyRect(MyOther, Form1.Canvas, MyRect);
Bitmap.SaveToFile('ok.bmp');
Bitmap.Free;
end;

подобный код не подходит совершенно. Т.к. при перекрытии формы другим окном в файл сохраняется совсем не TCanvas моей формы, а скриншот части экрана. Есть ли вообще возможность сохранения изображения именно своей формы, а не участков экрана?

Proger10 29.11.2009 09:15

Код:

procedure TForm1.Button1Click(Sender: TObject);
var
  BMP: TBitmap;
begin
  BMP:=TBitmap.Create;
  BMP.Height:=Form1.Height;
  BMP.Width:=Form1.Width;
  BMP.Canvas.CopyRect(BMP.Canvas.ClipRect, Form1.Canvas, Form1.Canvas.ClipRect);
  BMP.SaveToFile('C:\bmp.bmp');
  BMP.Free;
end;

Хм... Странно! А у меня это работает!!


Время: 06:59