WriteableBitmap的转换在C#位图位图、WriteableBitmap

2023-09-03 01:08:46 作者:婆娑远望

有没有办法转换 WriteableBitmap的来位图在C#中?

推荐答案

这是pretty的直白,其实。下面是一些code,它的应该的工作。我没有测试过,我从我的头顶写它。

It's pretty straightforward, actually. Here's some code that should work. I haven't tested it and I'm writing it from the top of my head.

private System.Drawing.Bitmap BitmapFromWriteableBitmap(WriteableBitmap writeBmp)
{
  System.Drawing.Bitmap bmp;
  using (MemoryStream outStream = new MemoryStream())
  {
    BitmapEncoder enc = new BmpBitmapEncoder();
    enc.Frames.Add(BitmapFrame.Create((BitmapSource)writeBmp));
    enc.Save(outStream);
    bmp = new System.Drawing.Bitmap(outStream);
  }
  return bmp;
}

在WriteableBitmap的继承一个的BitmapSource,可直接保存到流。然后,你建立从此流的位图。

The WriteableBitmap inherits from a BitmapSource, which can be saved directly to a stream. Then, you build a Bitmap from this stream.