Форум: "Основная";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];
ВнизBitMap Найти похожие ветки
← →
frits (2003-05-22 16:26) [0]Ребята, а как, нарисовав на самой форме (не в Image) рисунок, сохранить его в файл? Я видел, что это возможно, но как?
← →
Севостьянов Игорь (2003-05-22 16:35) [1]Если по простому то через SaveToFile -> SaveToStream от TBitmap например...
← →
Comp (2003-05-22 16:36) [2]А в свойстве Canvas ничего подобного нет???
← →
KoluChi (2003-05-22 17:16) [3]у Canvas нет
создай TBitmap, скопируй Canvas и сохраняй
← →
Переяслов Григорий (2003-05-22 17:23) [4]Вот так это делается и выводится в Clipboard
procedure Tform1.CopyForm(Sender: TObject);
var
Bitmap : TBitmap;
P : TPicture;
Source, Dest : TRect;
begin
Bitmap:=TBitmap.Create;
Bitmap.Width := Width;
Bitmap.Height := Height;
Source.Left := 0;
Source.Right := 0;
Source.Bottom := Height;
Dest.Left := 0; Dest.Top := 0;
Dest.Right := Width; Dest.Bottom := Height;
try
With Bitmap.Canvas do
CopyRect (Dest,Canvas,Source);
ClipBoard.Assign(Bitmap);
finally
Bitmap.Free;
end;
end;
← →
Севостьянов Игорь (2003-05-22 17:48) [5]Ну это конечно делаться как сказал
> Переяслов Григорий © (22.05.03 17:23)
, но дело в том, что она копирует канву вместе с конролами, поэтому лучше в памяти держать BitMap которую грузишь для фона формы и в конце сохранять ее..
Ведь даже Windows обои держит в памяти (поэтому рекомендуется на слабых компах их не устанавливать - 2Mb лишних оперативки)
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
BitMap: TBitMap;
Rect: TRect;
begin
BitMap := TBitMap.Create;
try
BitMap.LoadFromFile("C:\WinNT\bagira.bmp");
//Canvas.Draw(0, 0, BitMap);
Rect.Top := 0;
Rect.Left := 0;
Rect.Right := ClientWidth;
Rect.Bottom := ClientHeight;
Canvas.StretchDraw(Rect, BitMap);
finally
BitMap.Free;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
BitMap: TBitMap;
Rect: TRect;
begin
BitMap := TBitMap.Create;
try
Bitmap.Width := ClientWidth;
Bitmap.Height := ClientHeight;
Rect.Top := 0;
Rect.Left := 0;
Rect.Right := ClientWidth;
Rect.Bottom := ClientHeight;
BitMap.Canvas.CopyRect(Rect, Canvas, Rect);
BitMap.SaveToFile("Bagira.bmp");
finally
BitMap.Free;
end;
end;
end.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.012 c