如何将 BitmapSource 转换为 MemoryStream。虽然我尝试了一些代码:
private Stream StreamFromBitmapSource(BitmapSource writeBmp)
{
Stream bmp;
using (bmp = new MemoryStream())
{
BitmapEncoder enc = new BmpBitmapEncoder();
enc.Frames.Add(BitmapFrame.Create(writeBmp));
enc.Save(bmp);
}
return bmp;
}
它没有给出任何错误,但在放置调试点后,它显示了下面列出的一些异常。
容量:“printStream.Capacity”引发类型异常
“System.ObjectDisposeException”长度:“printStream.Length”抛出
“System.ObjectDisposeException”类型的异常位置:
“printStream.Position”抛出类型异常
'System.ObjectDisposeException'
using (bmp = new MemoryStream())
causes bmp
使用块最终销毁对象。而你回来了bmp
被破坏的变量。
删除使用:
private Stream StreamFromBitmapSource(BitmapSource writeBmp)
{
Stream bmp = new MemoryStream();
BitmapEncoder enc = new BmpBitmapEncoder();
enc.Frames.Add(BitmapFrame.Create(writeBmp));
enc.Save(bmp);
return bmp;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)