2011-01-03 31 views
22

Estoy intentando generar un archivo PNG usando C#. Todo lo que google parece estar relacionado con WPF. Mi problema es que necesito crear un cuadrado PNG de 50x50 lleno de verde en .NET 2.0.Cómo generar un archivo PNG con C#?

Mi pregunta es, ¿cómo hago esto? Estaba buscando en el System.Drawing namespace. Pero después de todo eso, siento que estoy muy lejos. ¿Alguien puede darme algunos consejos?

Respuesta

42

Se puede crear un mapa de bits con el tamaño que desee, a continuación, crear un objeto Graphics para poder dibujar en el mapa de bits. El método Clear es la forma más sencilla de llenar la imagen con un color. A continuación, guardar la imagen utilizando el formato PNG:

using (Bitmap b = new Bitmap(50, 50)) { 
    using (Graphics g = Graphics.FromImage(b)) { 
    g.Clear(Color.Green); 
    } 
    b.Save(@"C:\green.png", ImageFormat.Png); 
} 
9

Este es el código para usted:

Bitmap bmp = new Bitmap(50,50); 
Graphics g = Graphics.FromImage(bmp); 
g.FillRectangle(Brushes.Green, 0, 0, 50, 50); 
g.Dispose(); 
bmp.Save("filepath", System.Drawing.Imaging.ImageFormat.Png); 
bmp.Dispose(); 
1

Puede generar el archivo PNG mediante la siguiente manera -

FileInfo fi = new FileInfo(@"D:\bango.png"); 
FileStream fstr = fi.Create(); 
Bitmap bmp = new Bitmap(50, 50); 
bmp.Save(fstr, ImageFormat.Png); 
fstr.Close(); 
fi.Delete(); 
Cuestiones relacionadas