Comment générer un fichier PNG avec C#?

J'essaie de générer un fichier PNG en utilisant C#. Tout ce que je google semble être lié à WPF. Mon problème est, j'ai besoin de créer un carré PNG 50x50 rempli de vert dans. net 2.0.

Ma question est, comment puis-je faire cela? J'étais à la recherche dans le Système.Espace de noms de dessin. Mais après tout ça, je sens que je suis loin. Quelqu'un peut-il me donner des conseils?

25

3 réponses

Vous pouvez créer un bitmap avec la taille que vous voulez, puis créer un objet Graphics pour pouvoir dessiner sur le bitmap. La méthode Clear est le moyen le plus simple de remplir l'image avec une couleur. Ensuite, enregistrez l'image en utilisant le format 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);
}
47
répondu Guffa 2011-01-03 14:07:25

Voici le code pour vous:

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();
10
répondu honibis 2015-05-10 19:14:23

Vous pouvez générer un fichier png de la manière suivante -

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();
2
répondu Kiva Yor 2015-05-10 19:14:56