将32位bmp转换为24位

我有一个System.Drawing.Image截图文件。 我把它转换为bmp,但问题是它产生32位bmp,而我需要一个24位bmp。 如何将其转换为24?

试试这段代码:

public static Bitmap ConvertTo24bpp(Image img) { var bmp = new Bitmap(img.Width, img.Height, System.Drawing.Imaging.PixelFormat.Format24bppRgb); using (var gr = Graphics.FromImage(bmp)) gr.DrawImage(img, new Rectangle(0, 0, img.Width, img.Height)); return bmp; }