画像をアイコンに変換しようとしています。私の機能は次のとおりです。
private Icon GenerateIcon(int width, int height)
{
using (Bitmap icon = _backingImage.GetThumbnailImage(width, height, () => false, System.IntPtr.Zero) as Bitmap)
using(MemoryStream imgStream = new MemoryStream())
{
icon.Save(imgStream, System.Drawing.Imaging.ImageFormat.Icon);
return new Icon(imgStream);
}
}
しかし、プログラムがメソッドを呼び出すと、ArgumentNullException("encoder")私が呼び出している場所がスローされicon.Saveます。
私はエンコーダーを渡していないので、これは奇妙だと思います。フレームワークにエンコーダーがどうあるべきかを理解させたいので、を渡していImageFormatます。
のエンコーダーがないのImageFormat.Iconですか、それとも私が間違っていることがありますか?