【问题标题】:Bliting two WriteableBitmap with WriteableBitmapEx使用 WriteableBitmapEx 对两个 WriteableBitmap 进行 Bliting
【发布时间】:2013-04-18 08:40:57
【问题描述】:

我试图对两个 writeablebitmap 进行 blit。 但是,调试器提示了一条错误消息,说明如下:

输入的 WriteableBitmap 需要具有 Pbgra32 像素格式。使用 BitmapFactory.ConvertToPbgra32Format 方法自动将任何输入 BitmapSource 转换为此类接受的正确格式。

这是我的代码。

Rect cRect =new (320,240);
WriteableBitmap _bitmap = new WriteableBitmap(320, 240, 96, 96, PixelFormats.Bgr32, null);
_bitmap.WritePixels(new Int32Rect(0, 0, 320, 240), _image, 320*240, 0);    //_image is a image stream                  
_bitmap.Blit(cRect, _imageFrame, cRect); //_imageFrame is another writeablebitmap

实际上 _imageFrame 是来自画布的 WriteableBitmap,它会定期更改其内容。有没有更有效的方法来 blit 可写位图和画布?

【问题讨论】:

标签: c# writeablebitmapex


【解决方案1】:

你能改成这一行吗:

WriteableBitmap _bitmap = new WriteableBitmap(320, 240, 96, 96, PixelFormats.Pbgra32, null);

_imageFrame WriteableBitmap 上类似的东西

【讨论】:

  • 实际上 _imageFrame 是来自画布的 WriteableBitmap,它会定期更改其内容。有没有更有效的方法来 blit 可写位图和画布?
  • 我看到了您之前关于此问题的问题,如果您使用其他问题的摘录,则不必更改 imageFrame
  • 我可以将 Pbgra32 图像转换为 Bgr32 图像吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-11
  • 2020-11-13
  • 2017-10-29
  • 1970-01-01
相关资源
最近更新 更多