Dessin, positionnement et clonage d'images dans GDI+

Vous pouvez utiliser la Bitmap classe pour charger et afficher des images raster, et vous pouvez utiliser la Metafile classe pour charger et afficher des images vectorielles. Les Bitmap classes héritent Metafile de la Image classe. Pour afficher une image vectorielle, vous avez besoin d’une instance de la Graphics classe et d’un Metafile. Pour afficher une image raster, vous avez besoin d’une instance de la Graphics classe et d’un Bitmap. L’instance de la Graphics classe fournit la DrawImage méthode, qui reçoit le Metafile ou Bitmap en tant qu’argument.

Types de fichiers et clonage

L’exemple de code suivant montre comment construire un Bitmap fichier Climber.jpg et afficher la bitmap. Le point de destination du coin supérieur gauche de l’image, (10, 10), est spécifié dans les paramètres du deuxième et du troisième.

Bitmap myBitmap = new Bitmap("Climber.jpg");
myGraphics.DrawImage(myBitmap, 10, 10);
Dim myBitmap As New Bitmap("Climber.jpg")
myGraphics.DrawImage(myBitmap, 10, 10)

L’illustration suivante montre l’image.

Image Sample

Vous pouvez construire Bitmap des objets à partir d’un large éventail de formats de fichiers graphiques : BMP, GIF, JPEG, EXIF, PNG, TIFF et ICON.

L’exemple de code suivant montre comment construire Bitmap des objets à partir de divers types de fichiers, puis afficher les bitmaps.

Bitmap myBMP = new Bitmap("SpaceCadet.bmp");
Bitmap myGIF = new Bitmap("Soda.gif");
Bitmap myJPEG = new Bitmap("Mango.jpg");
Bitmap myPNG = new Bitmap("Flowers.png");
Bitmap myTIFF = new Bitmap("MS.tif");

myGraphics.DrawImage(myBMP, 10, 10);
myGraphics.DrawImage(myGIF, 220, 10);
myGraphics.DrawImage(myJPEG, 280, 10);
myGraphics.DrawImage(myPNG, 150, 200);
myGraphics.DrawImage(myTIFF, 300, 200);
Dim myBMP As New Bitmap("SpaceCadet.bmp")
Dim myGIF As New Bitmap("Soda.gif")
Dim myJPEG As New Bitmap("Mango.jpg")
Dim myPNG As New Bitmap("Flowers.png")
Dim myTIFF As New Bitmap("MS.tif")

myGraphics.DrawImage(myBMP, 10, 10)
myGraphics.DrawImage(myGIF, 220, 10)
myGraphics.DrawImage(myJPEG, 280, 10)
myGraphics.DrawImage(myPNG, 150, 200)
myGraphics.DrawImage(myTIFF, 300, 200)

La Bitmap classe fournit une Clone méthode que vous pouvez utiliser pour effectuer une copie d’un objet existant Bitmap. La Clone méthode a un paramètre de rectangle source que vous pouvez utiliser pour spécifier la partie de la bitmap d’origine que vous souhaitez copier. L’exemple de code suivant montre comment créer un Bitmap en clonant la moitié supérieure d’un élément existant Bitmap. Les deux images sont ensuite dessinées.

Bitmap originalBitmap = new Bitmap("Spiral.png");
Rectangle sourceRectangle = new Rectangle(0, 0, originalBitmap.Width,
   originalBitmap.Height / 2);

Bitmap secondBitmap = originalBitmap.Clone(sourceRectangle,
   PixelFormat.DontCare);

myGraphics.DrawImage(originalBitmap, 10, 10);
myGraphics.DrawImage(secondBitmap, 150, 10);
Dim originalBitmap As New Bitmap("Spiral.png")
Dim sourceRectangle As New Rectangle(0, 0, originalBitmap.Width, _
   CType(originalBitmap.Height / 2, Integer))

Dim secondBitmap As Bitmap = originalBitmap.Clone(sourceRectangle, _
   PixelFormat.DontCare)

myGraphics.DrawImage(originalBitmap, 10, 10)
myGraphics.DrawImage(secondBitmap, 150, 10)

L’illustration suivante montre les deux images.

Cropping

Voir aussi