我使用以下代码将jpgImage写入PictureBox.Image.
var jpgImage = new Byte[jpgImageSize];
...
pictureBox.Image = new Bitmap(new MemoryStream(jpgImage));
,我可以使用下面的代码将字节数组写入文件
using (var bw =
new BinaryWriter(File.Open(filename, FileMode.Create,
FileAccess.Write, FileShare.None)))
{
bw.Write(jpgImage);
}
但是我如何从PictureBox获得jpgImage字节数组。这样我就可以把它写入文件了?我如何反转以下从PictureBox.Image获得字节数组?
pictureBox.Image = new Bitmap(new MemoryStream(jpgImage));
试试这个
pictureBox.Image.Save(@"Path",ImageFormat.Jpeg);
您可以使用
pictureBox.Image.Save(stream,System.Drawing.Imaging.ImageFormat.Jpeg);
的例子:
System.IO.MemoryStream ms = new System.IO.MemoryStream();
pictureBox1.Image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] ar = new byte[ms.Length];
ms.Write(ar, 0, ar.Length);
使用下面的代码保存到自定义位置
using (SaveFileDialog saveFileDialog = new SaveFileDialog() {Filter = @"PNG|*.png"})
{
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
pictureBox.Image.Save(saveFileDialog.FileName);
}
}