32 ビット rgb bmp イメージを 24 ビット rgb bmp に変換する必要があります。
これは私がやろうとしていることです
Bitmap b1=new Bitmap(sorecFileName);
Bitmap b2=new
Bitmap(b1.Size.Width,b1.Size.Height,System.Drawing.Imaging.PixelFormat.Format24bppRgb);
b2.SetResolution(b1.HorizontalResolution, b1.VerticalResolution);
Graphics g=Graphics.FromImage(b2);
g.DrawImage(b1,0,0);
//continue to draw on g here to add text or graphics.
g.Dispose();
b2.Save(destinationFileName);
コードは正常にコンパイルされ、24bpp の出力画像が生成されますが、RGB 形式ではなくなりました。これはなぜですか?
画像をrgb24として入力して表示するライブラリがあるので、それを理解しました。したがって、上記のコードで生成されたファイルを関数への入力として与えようとすると、ノイズの多い画像が表示されます。
ただし、同じファイルをペイントで開き、24bpp bmp として保存し、関数に入力すると、画像は正常に表示されます。私は何が欠けていますか?