Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF-如何在没有任何alpha通道的情况下保存PNG?_C#_Wpf_Image - Fatal编程技术网

C# WPF-如何在没有任何alpha通道的情况下保存PNG?

C# WPF-如何在没有任何alpha通道的情况下保存PNG?,c#,wpf,image,C#,Wpf,Image,我有一个BitmapSource。我将其保存为png格式,如下所示: PngBitmapEncoder enc = new PngBitmapEncoder(); enc.Frames.Add(myBitmapSource); enc.Save(fs); 没有alpha通道如何保存?24bpp位图没有alpha通道。由PNG编码器支持。使用PixelFormats.Rgb24创建可写位图。使用FormatConvertedBitmap在编码前将其转换为每像素24位: var noAlphaSo

我有一个
BitmapSource
。我将其保存为png格式,如下所示:

PngBitmapEncoder enc = new PngBitmapEncoder();
enc.Frames.Add(myBitmapSource);
enc.Save(fs);

没有alpha通道如何保存?

24bpp位图没有alpha通道。由PNG编码器支持。使用PixelFormats.Rgb24创建可写位图。

使用
FormatConvertedBitmap
在编码前将其转换为每像素24位:

var noAlphaSource = new FormatConvertedBitmap
{
  Source = myBitmapSource,
  DestinationFormat = PixelFormats.Rgb24
};

var encoder = new PngBitmapEncoder();
enc.Frames.Add(noAlphaSource);
enc.Save(fs);

我无法控制接收到的位图源,如何将接收到的位图源转换为具有PixelFormats.Rgb24的位图源?