保存图像 bmp c#
Saving an image bmp c#
我有这个功能可以绘制 bmp 格式的图像
private void DrawImage(Byte[] imgData, PictureBox picBox)
{
int colorval;
Bitmap bmp = new Bitmap(m_ImageWidth, m_ImageHeight);
picBox.Image = (Image)bmp;
for (int i=0; i<bmp.Width; i++)
{
for (int j=0; j<bmp.Height; j++)
{
colorval = (int)imgData[(j*m_ImageWidth)+ i];
bmp.SetPixel(i,j,Color.FromArgb(colorval,colorval, colorval));
}
}
picBox.Refresh();
}
当我添加 picBox.Image.Save(@"C:\Users\Jose Moreno\Desktop", System.Drawing.Imaging.ImageFormat.Bmp);
低于PicBox.Refresh();,程序崩溃并报错:
"An unhandled exception of type 'System.Runtime.InteropServices.ExternalException' occurred in System.Drawing.dll"
为什么程序会崩溃?谢谢你的帮助。
Image.Save(String, ImageFormat)
需要完整的 文件名 ,而不仅仅是 文件路径 。 "C:\Users\Jose Moreno\Desktop"
是(大概)预先存在的目录的名称,而不是可以创建的文件的名称。您需要传递一个实际的文件名,例如:
picBox.Image.Save(@"C:\Users\Jose Moreno\Desktop\TestFilename.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
如果无法创建指定名称的文件,您将收到这个难以理解的错误。
请注意,如果图像最初是从文件加载的,则在处理图像之前无法保存回同一文件,因为文件已锁定。参见 How can I fix this GDI+ generic exception when I save images?。但这不是您问题中显示的问题。
我有这个功能可以绘制 bmp 格式的图像
private void DrawImage(Byte[] imgData, PictureBox picBox)
{
int colorval;
Bitmap bmp = new Bitmap(m_ImageWidth, m_ImageHeight);
picBox.Image = (Image)bmp;
for (int i=0; i<bmp.Width; i++)
{
for (int j=0; j<bmp.Height; j++)
{
colorval = (int)imgData[(j*m_ImageWidth)+ i];
bmp.SetPixel(i,j,Color.FromArgb(colorval,colorval, colorval));
}
}
picBox.Refresh();
}
当我添加 picBox.Image.Save(@"C:\Users\Jose Moreno\Desktop", System.Drawing.Imaging.ImageFormat.Bmp);
低于PicBox.Refresh();,程序崩溃并报错: "An unhandled exception of type 'System.Runtime.InteropServices.ExternalException' occurred in System.Drawing.dll"
为什么程序会崩溃?谢谢你的帮助。
Image.Save(String, ImageFormat)
需要完整的 文件名 ,而不仅仅是 文件路径 。 "C:\Users\Jose Moreno\Desktop"
是(大概)预先存在的目录的名称,而不是可以创建的文件的名称。您需要传递一个实际的文件名,例如:
picBox.Image.Save(@"C:\Users\Jose Moreno\Desktop\TestFilename.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
如果无法创建指定名称的文件,您将收到这个难以理解的错误。
请注意,如果图像最初是从文件加载的,则在处理图像之前无法保存回同一文件,因为文件已锁定。参见 How can I fix this GDI+ generic exception when I save images?。但这不是您问题中显示的问题。