RAD Studio |  |

Saving a Picture to a File
See Also
Collapse All

The picture object can load and save graphics in several formats, and you can create and register your own graphic-file formats so that picture objects can load and store them as well.

To save the contents of an image control in a file, call the SaveToFile method of the image control's Picture object.

The SaveToFile method requires the name of a file in which to save. If the picture is newly created, it might not have a file name, or a user might want to save an existing picture in a different file. In either case, the application needs to get a file name from the user before saving, as shown in the next topic.

The following pair of event handlers, attached to the FileSave and FileSave As menu items, respectively, handle the resaving of named files, saving of unnamed files, and saving existing files under new names.

Copy Code

    procedure TForm1.Save1Click(Sender: TObject);
    begin
    if CurrentFile <> '' then
    Image.Picture.SaveToFile(CurrentFile){ save if already named }
    else SaveAs1Click(Sender);{ otherwise get a name }
    end;
    procedure TForm1.Saveas1Click(Sender: TObject);
    begin
    if SaveDialog1.Execute then{ get a file name }
    begin
    CurrentFile := SaveDialog1.FileName;{ save the user-specified name }
    Save1Click(Sender);{ then save normally }
    end;
    end;

Copy Code

    void __fastcall TForm1::Save1Click(TObject *Sender)
    {
      if (!CurrentFile.IsEmpty())
        Image->Picture->SaveToFile(CurrentFile);   // save if already named
    else SaveAs1Click(Sender);                     // otherwise get a name
    }
    void __fastcall TForm1::SaveAs1Click(TObject *Sender)
    {
      if (SaveDialog1->Execute())              // get a file name
      {
        CurrentFile = SaveDialog1->FileName;  // save user-specified name
        Save1Click(Sender);                   // then save normally
      }
    }

See Also

Loading a Picture from a File

Replacing the Picture

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