如何使用saveFileDialog在C#中保存图像?

时间:2012-06-15 17:09:44

标签: c# image savefiledialog

  

可能重复:
  Issue while saving image using savefiledialog

我在C#中使用Windows窗体。我该如何使用saveFileDialog?我有图片框,在图片框上有一个图像,我想保存它。加载的图像是bmp。我想将它保存为4种格式之一:bmp,jpeg,png,tiff。我读了一些关于MDSN的一些注意事项并尝试过但我可能做错了。所以我最好问一下应该怎么写? 应该如何编写方法 private void saveFileDialog1_FileOk(object sender,CancelEventArgs e)以及如何看待属性 saveFileDialog.Filter ? 感谢

编辑:
我尝试过的:
Issue while saving image using savefiledialog

EDIT2:
我试过这个过滤器

Filter = bmp (*.bmp)|*.bmp|jpeg (*.jpeg)|*.jpeg|png (*.png)|*.png|tiff (*.tiff)|*.tiff

1 个答案:

答案 0 :(得分:19)

您可以像这样使用SaveFileDialog:

SaveFileDialog sfd = new SaveFileDialog();
sfd.Filter = "Images|*.png;*.bmp;*.jpg";
ImageFormat format = ImageFormat.Png;
if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
    string ext = System.IO.Path.GetExtension(sfd.FileName);
    switch (ext)
    {
        case ".jpg":
            format = ImageFormat.Jpeg;
            break;
        case ".bmp":
            format = ImageFormat.Bmp;
            break;
    }
    pictureBox1.Image.Save(sfd.FileName, format);
}