我将我在 StackOverflow 上找到的函数用于项目:https
://stackoverflow.com/a/6484754/9535211
此函数的目标是将 System.Windows.Media.Imaging.BitmapImage 转换为 System.Drawing。位图。
public Bitmap BitmapImage2Bitmap(BitmapImage bitmapImage)
{
using (MemoryStream outStream = new MemoryStream())
{
BitmapEncoder enc = new BmpBitmapEncoder();
enc.Frames.Add(BitmapFrame.Create(bitmapImage));
enc.Save(outStream);
System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(outStream);
return (new Bitmap(bitmap));
}
}
它工作得很好(即使它真的很重),但它每次调用它都会抛出一个异常:
异常抛出:PresentationCore.dll 中的'System.NotSupportedException'
它似乎来自以下行:
enc.Save(outStream);
有没有办法让它消失?
谢谢你的帮助 !