我有图像的流,我通过下面的代码将其转换为图像
Image imagefromstream = Image.FromStream(stream);
当我在图形中绘制此图像时,它会绘制图像。
但是,如果我在图形中绘制后处理流,则不会绘制图像。
谁能帮我处理图像流
根据MSDN在这里:
You must keep the stream open for the lifetime of the Image.
关闭应用程序时(或不再需要映像时)释放流
在这种情况下,您拥有内存流的直接引用,如果您处理它,图像也会被释放。
因此,您从流中获取源并将其放在BitmapImage
中,将该BitmapImage
设置为图像的源。
var imageSource = new BitmapImage();
imageSource.BeginInit();
imageSource.StreamSource = memoryStream;
imageSource.CacheOption= CacheOption.OnLoad;
imageSource.EndInit();
// Assign the Source property of your image
image.Source = imageSource;