I'm copying an image. (My actual code is resizing the image but that's not relevant to my question.) My code looks something like this.
Image src = ...
using (Image dest = new Bitmap(width, height))
{
Graphics graph = Graphics.FromImage(dest);
graph.InterpolationMode = InterpolationMode.HighQualityBicubic;
graph.DrawImage(src, 0, 0, width, height);
dest.Save(filename, saveFormat);
}
This seems to work great unless src
is loaded from an image with transparencies (such as GIF) or an alpha channel (such as PNG).
How can I get DrawImage()
to transfer the transparencies/alpha channel to the new image, and then keep them when I save the file?