bpp = bits per pixel, so 32bpp means 8/8/8/8 for R/G/B/A.
Like .NET has an enum for these "System.Drawing.Imaging.PixelFormat".
Now once I have a Bitmap or Image object with my graphics, how would I save it to a file / what format would I use?
What image file format (JPEG/GIF/PNG) supports low bit-depths like 16bpp or 8bpp (instead of the usual 32bpp or 24bpp)
Try this:
ImageCodecInfo pngCodec = ImageCodecInfo.GetImageEncoders().Where(codec => codec.FormatID.Equals(ImageFormat.Png.Guid)).FirstOrDefault();
if (pngCodec != null)
{
EncoderParameters parameters = new EncoderParameters();
parameters.Param[0] = new EncoderParameter(Encoder.ColorDepth, 8);
myImage.Save(myStream, pngCodec, parameters);
}