【发布时间】:2017-02-16 11:17:51
【问题描述】:
如何将 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;
}
它没有给出任何错误,但是在放置调试点之后它显示了一些下面列出的异常。
Capacity: 'printStream.Capacity' 引发类型异常 'System.ObjectDisposedException' 长度:'printStream.Length' 抛出 'System.ObjectDisposedException' 类型的异常位置: 'printStream.Position' 引发类型异常 'System.ObjectDisposedException'
【问题讨论】:
-
请看What should I do when someone answers my question? 此外,在您将编码位图写入 MemoryStream 之后,您打算如何处理它?您可能只需要生成的缓冲区,即字节数组吗?
-
谢谢!克莱门斯,我对发布的答案投了票。 :),我希望我的颜色帧可以保存在内存缓冲区中,以便与
face recognition API轻松使用。所以,我将我的结果返回到Stream,我的face recognition API将使用它。 -
你也应该接受一个答案。您现在遇到的问题是另一个问题。
标签: c# wpf memorystream bitmapsource