Il s'agit d'une clarification parce que j'ai vu des choses faites dans le code qui sont honnêtement confuses - je pense que l'exemple suivant pourrait aider les autres.
Comme d'autres l'ont déjà dit - Bitmap hérite de l'abstrait Image classe
Abstrait signifie effectivement que vous ne pouvez pas créer une instance New() de celui-ci.
Image imgBad1 = new Image(); // Bad - won't compile
Image imgBad2 = new Image(200,200); // Bad - won't compile
Mais vous pouvez faire ce qui suit :
Image imgGood; // Not instantiated object!
// Now you can do this
imgGood = new Bitmap(200, 200);
Vous pouvez maintenant utiliser imgGood comme vous le feriez pour le même objet bitmap si vous aviez fait ce qui suit :
Bitmap bmpGood = new Bitmap(200,200);
Ce qui est bien ici, c'est que vous pouvez dessiner l'objet imgGood à l'aide d'une fonction Graphiques objet
Graphics gr = default(Graphics);
gr = Graphics.FromImage(new Bitmap(1000, 1000));
Rectangle rect = new Rectangle(50, 50, imgGood.Width, imgGood.Height); // where to draw
gr.DrawImage(imgGood, rect);
Ici imgGood peut être cualquier Objet Image - Bitmap, Metafile, ou tout autre objet qui hérite d'Image !
3 votes
Passant : il y a une meilleure réponse à droite aquí
2 votes
Duplicata possible de Quelle est la différence entre System.Drawing.Image et System.Drawing.Bitmap ?