Używanie Graphics.DrawImage () do rysowania obrazu z przezroczystością / kanałem alfa
Kopiuję obraz. (Mój rzeczywisty kod zmienia rozmiar obrazu, ale to nie ma znaczenia dla mojego pytania.) Mój kod wygląda mniej więcej tak.
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);
}
To wydaje się działać świetnie, chyba żesrc
jest ładowany z obrazu za pomocą folii (takich jak GIF) lub kanału alfa (takiego jak PNG).
Jak mogę zdobyćDrawImage()
aby przenieść folie / kanał alfa na nowy obraz, a następnie zachować je po zapisaniu pliku?