我无法理解如何使用FormatConvertedBitmap
将WriteableBitmap
转换为Pbgra32
到Bgr32
。我正在构建的应用程序最初使用的是Bgr32,我引入了WriteableBitmapEx
(使用Pbgra32)来翻转图像。现在,我需要将Pbgra32
转换回Bgr32
以保持与程序其余部分的一致性。以下是我所拥有的:
FormatConvertedBitmap newFormat = new FormatConvertedBitmap(this.colorBitmap, PixelFormats.Bgr32, null, 0);
...我相信做转换是正确的。但是,我不确定如何从中检索WriteableBitmap。
答案 0 :(得分:1)
您走在正确的轨道上,您只需将其投射到WriteableBitmap
,这样您就可以将其存储为一个。要做到这一点,您必须先将其转换为BitmapSource
并创建一个新的WriteableBitmap
。所以像这样:
WriteableBitmap yourConvertedPicture = new WriteableBitmap(
(BitmapSource)(new FormatConvertedBitmap(thePictureToConvert, PixelFormats.Bgr32, null, 0))
);
这也适用于转换为任何其他PixelFormat