我已经检查过“重复问题”。除了this one之外,他们都没有这个问题的答案,而且就我而言,这还不能完全解决问题。
我只想将pictureBox的图像保存到文件中。
首先我尝试
if (picBoxImage.Image == null) return;
//Here we select to create a file
string fileName;
saveFileDialog1.Filter = "BMP (*.bmp)|*.bmp";
saveFileDialog1.FileName = "";
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
fileName = saveFileDialog1.FileName;
}
else
{
return;
}
Trace.WriteLine(fileName);
picBoxImage.Image.Save(fileName, ImageFormat.Bmp);
这给了我一个例外(著名的CGi例外)
所以现在我正在尝试并且可以正常工作
using (Bitmap bitmap = new Bitmap(picBoxImage.Width, picBoxImage.Height))
{
using (Graphics graphics = Graphics.FromImage(bitmap))
{
graphics.Clear(Color.Transparent);
//graphics.DrawImage(picBoxImage.Image, (bitmap.Width - picBoxImage.Image.Width) / 2, (bitmap.Height - picBoxImage.Image.Height) / 2);
graphics.DrawImage(picBoxImage.Image, 0, 0,picBoxImage.Width,picBoxImage.Height);
}
bitmap.Save(fileName, ImageFormat.Bmp);
}
我的问题是为什么PictureBox的Image的Save方法不起作用? 以及为什么需要图形