RAD Studio VCL Reference
ContentsIndex
PreviousUpNext
TPicture.SaveToFile Method

Writes the picture to disk.

Pascal
procedure SaveToFile(const Filename: string);
C++
__fastcall SaveToFile(const AnsiString Filename);

Use SaveToFile to save a TPicture object to the file specified in Filename. 

The saved picture can be loaded to another TPicture or to an appropriate TGraphic descendant by calling its LoadFromFile method.  

C++ Examples: 

 

/*
This example converts a specified icon to a bitmap. To run 
this example, add an image, a button, and an Open dialog to 
a form. Name the button ConvertIcon2Bitmap, and add the 
following code as its OnClick event handler.
*/

#include <memory>       //for STL auto_ptr class

void __fastcall TForm1::ConvertIcon2BitmapClick(TObject *Sender)
{
  OpenDialog1->DefaultExt = ".ICO";
  OpenDialog1->Filter = "icons (*.ico)|*.ICO";
  OpenDialog1->Options << ofOverwritePrompt << ofFileMustExist << ofHideReadOnly;
  if (OpenDialog1->Execute())
  {
    std::auto_ptr<TIcon> pi(new Graphics::TIcon);
    AnsiString as;
    pi->LoadFromFile(OpenDialog1->FileName);
    as = ChangeFileExt(OpenDialog1->FileName,".BMP");
    Image1->Width = pi->Width;
    Image1->Height = pi->Height;
    Image1->Canvas->Draw(0, 0, pi.get());
    Image1->Picture->SaveToFile(as);
    ShowMessage(OpenDialog1->FileName + " Saved to " + as);
  }
}

 

Delphi Examples: 

{
This example converts a specified icon to a bitmap. To run 
this example, add an image, a button, and an Open dialog to 
a form. Name the button ConvertIcon2Bitmap, and add the 
following code as its OnClick event handler.
} 
procedure TForm1.ConvertIcon2BitmapClick(Sender: TObject);
var 
  s : string;
  Icon: TIcon;
begin
  OpenDialog1.DefaultExt := '.ICO';
  OpenDialog1.Filter := 'icons (*.ico)|*.ICO';
  OpenDialog1.Options := [ofOverwritePrompt, ofFileMustExist, ofHideReadOnly ];
  if OpenDialog1.Execute then
  begin
    Icon := TIcon.Create;
    try
      Icon.Loadfromfile(OpenDialog1.FileName);
      s:= ChangeFileExt(OpenDialog1.FileName,'.BMP');
      Image1.Width := Icon.Width;
      Image1.Height := Icon.Height;
      Image1.Canvas.Draw(0,0,Icon);
      Image1.Picture.SaveToFile(s);
      ShowMessage(OpenDialog1.FileName + ' Saved to ' + s);
    finally
      Icon.Free;
    end;
  end;
end; 

 

Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
What do you think about this topic? Send feedback!