我尝试过如下
BitmapSource bitmap;
bitmap = graphData.CreateScreenshot();
JpegBitmapEncoder encoder = new JpegBitmapEncoder();
BitmapFrame outputFrame = BitmapFrame.Create(bitmap);
encoder.Frames.Add(outputFrame);
encoder.QualityLevel = 100;
FileStream stream = new FileStream("test.jpg", FileMode.Create);
encoder.Save(stream);
但我无法查看图片。我可以看到以下消息:
Windows照片查看器无法打开此照片,因为正在使用其他程序编辑照片
这里出了什么问题?
答案 0 :(得分:2)
您应该在使用
创建流后尝试关闭流stream.Close();
也就是说,最好在using
语句中创建Stream。当执行离开using
块时,流将被丢弃,因此将自动关闭。
using (var stream = new FileStream("test.jpg", FileMode.Create))
{
encoder.Save(stream);
}