在 C# 中将 WriteableBitmap 转换为 Bitmap

时间:2022-10-17
本文介绍了在 C# 中将 WriteableBitmap 转换为 Bitmap的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

有什么方法可以转换WriteableBitmap 到 C# 中的位图?

Is there any way for converting WriteableBitmap to Bitmap in C# ?

推荐答案

实际上非常简单.下面是一些应该工作的代码.我还没有测试过它,我是从头开始写的.

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.

这篇关于在 C# 中将 WriteableBitmap 转换为 Bitmap的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一条:自动将位图修剪到最小尺寸? 下一条:无法在位图中设置调色板

相关文章

最新文章