Как сделать фон прозрачным при сохранении
На so нашёл код, который рисует в круге текст. Все работает, но когда сохраняю картинки, фон остается, а хочется чтобы он был transparent
public static System.Drawing.Image DrawUserCircle(System.Drawing.Size PicSize, System.Drawing.Brush Brush, string Texto, System.Drawing.Font Fuente, System.Drawing.Color BackColor)
{
System.Drawing.Image Canvas = new System.Drawing.Bitmap(PicSize.Width, PicSize.Height);
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(Canvas);
System.Drawing.Rectangle outerRect = new System.Drawing.Rectangle(-1, -1, Canvas.Width + 1, Canvas.Height + 1);
System.Drawing.Rectangle rect = System.Drawing.Rectangle.Inflate(outerRect, -2, -2);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBilinear;
g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
g.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
using (System.Drawing.Drawing2D.GraphicsPath path = new System.Drawing.Drawing2D.GraphicsPath())
{
g.FillRectangle(new System.Drawing.SolidBrush(BackColor),
new System.Drawing.RectangleF(0, 0, PicSize.Width, PicSize.Height));
path.AddEllipse(rect);
g.FillPath(Brush, path);
System.Drawing.SizeF stringSize = g.MeasureString(Texto, Fuente); //<- Obtiene el tamaño del Texto en pixeles
int posX = Convert.ToInt32((PicSize.Width - stringSize.Width) / 2); //<- Calcula la posicion para centrar el Texto
int posY = Convert.ToInt32((PicSize.Height - stringSize.Height) / 2);
g.DrawString(Texto, Fuente, new System.Drawing.SolidBrush(BackColor), new System.Drawing.Point(posX, posY));
}
return Canvas;
}