Конференция "Media" » Сохранить Form.Canvas в файл .bmp [D7]
 
  • rassl (11.03.09 11:16) [0]
    Здравствуйте уважаемые программисты!может ли кто подсказать как сохранить рисунок на главной форме Form1.Canvas в файл bitmap или jpeg.
  • brother © (11.03.09 11:26) [1]
    из справки:
    var
     Bitmap: TBitmap;
     MyRect, MyOther: TRect;
    begin

     MyRect := Rect(10,10,100,100);

     MyOther := Rect(10,111,100, 201);
     Bitmap := TBitmap.Create;
     Bitmap.LoadFromFile('c:\windows\tartan.bmp');
     Form1.Canvas.BrushCopy(MyRect, Bitmap, MyRect, clBlack);
     Form1.Canvas.CopyRect(MyOther,Bitmap.Canvas,MyRect);
     Bitmap.Free;
    end;

    переделывай)
  • rassl (11.03.09 11:41) [2]
    т.е. как сделать Bitmap.Pixels[] := Form1.Canvas.Pixels[];??
    т.е. уже на канве формы имеется рисунок. его записать в битмап
    и сохранить в Bitmap.SaveToFile('c:\windows\tartan.bmp')??
  • {RASkov} © (11.03.09 11:45) [3]
    > [2] rassl   (11.03.09 11:41)

    Bitmap.Canvas.CopyRect(MyOther, Form1.Canvas, MyRect);
  • rassl (11.03.09 11:46) [4]
    в этих 2-х процедурах все понятно сохранение рисунка в файл bmp из Image:

    procedure TPodMainAnalogForm.SaveGraphBitmap(Sender: TObject);
    var Name:string;
    begin
    if PathName = DefaultFileName
     then begin SaveAsGraphBitmap(Sender); ; end
     else begin  Name:=SaveFileBitmap.FileName;
     if Name='' then Exit;
     if ExtractFileExt(Name)='' then Name:=Name+'.bmp';
     ImageGraph.Picture.SaveToFile(Name);
     end;
    end;

    procedure TPodMainAnalogForm.SaveAsGraphBitmap(Sender: TObject);
    begin
     SaveFileBitmap.FileName := PathName;
     if SaveFileBitmap.Execute then
     begin
       PathName := SaveFileBitmap.FileName;
       SaveGraphBitmap(Sender);
       Caption :='Модель - '+ExtractFileName(PathName);
     end;
    end;
  • {RASkov} © (11.03.09 11:48) [5]
    > [4] rassl   (11.03.09 11:46)

    К чему ты их сюда выложил? Сендер лишний в них)
  • brother © (11.03.09 11:52) [6]
    1. у битмапа есть канвас
    2. по примеру, совсем трудно?
  • {RASkov} © (11.03.09 11:55) [7]
    > [6] brother ©   (11.03.09 11:52)

    Он как увидел что в примере:
    > Bitmap.LoadFromFile('c:\windows\tartan.bmp');

    а ему нужно:
    > Bitmap.SaveToFile('c:\windows\tartan.bmp')

    поэтому дальше пример смотреть не стал
    :)
  • brother © (11.03.09 12:09) [8]
    мдя, хотя... на ошибках учатся...
  • rassl (11.03.09 12:11) [9]
    копирует, вот спасибо, надо ж :))
    а я писал раньше Bitmap.Canvas.CopyRect(MyOther, Bitmap.Canvas, MyRect); и не получалось, ну конечно :))
 
Конференция "Media" » Сохранить Form.Canvas в файл .bmp [D7]
Есть новые Нет новых   [133926   +456][b:0][p:0]