public static AuxiliaryLibraries.Media.Bitmap GetBitmap(this BitmapSource bitmapSource) { AuxiliaryLibraries.Media.PixelFormat pix = WPFToAux(bitmapSource.Format); if (pix != AuxiliaryLibraries.Media.PixelFormats.Undefined) { var colors = bitmapSource.Palette?.Colors.Select(x => System.Drawing.Color.FromArgb(x.A, x.R, x.G, x.B)).ToArray(); return(new AuxiliaryLibraries.Media.Bitmap(bitmapSource.PixelWidth, bitmapSource.PixelHeight, pix, bitmapSource.GetData(), colors)); } else { FormatConvertedBitmap formatConvertedBitmap = new FormatConvertedBitmap(bitmapSource, PixelFormats.Bgra32, null, 0); return(formatConvertedBitmap.GetBitmap()); } }