Как сделать изображение прозрачным фоном в C#
Метод Bitmap класса MakeTransparent изменяет все пиксели с заданным цветом на прозрачный цвет A = 0, R = 0, G = 0, B = 0 Когда программа запускается, следующий код делает фон прозрачным для двух изображений, хранящихся в ресурсах Smile и Frown программы.
// Изображения.
private Bitmap SmileBitmap, FrownBitmap;
// Делаем фоны изображений прозрачными.
private void Form1_Load(object sender, EventArgs e)
{
SmileBitmap = Properties.Resources.Smile;
SmileBitmap.MakeTransparent(SmileBitmap.GetPixel(0, 0));
FrownBitmap = Properties.Resources.Frown;
FrownBitmap.MakeTransparent(FrownBitmap.GetPixel(0, 0));
}
Код сохраняет ресурс Smile в переменной Bitmap. Затем он использует метод Bitmap объекта MakeTransparent, чтобы сделать все его пиксели, которые соответствуют цвету пикселя в верхнем левом углу, прозрачным. Затем код повторяет эти шаги для изображения Frown.
Следующий обработчик событий Paint отображает два изображения.
// Нарисуем два перекрытия изображений.
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawImage(FrownBitmap, 30, 30);
e.Graphics.DrawImage(SmileBitmap, 95, 85);
}
