Dessin, positionnement et clonage d'images dans GDI+
Vous pouvez utiliser la classe Bitmap pour charger et afficher des images raster et la classe Metafile pour charger et afficher des images vectorielles. Les classes Bitmap et Metafile héritent de la classe Image. Pour afficher une image vectorielle, vous avez besoin d'une instance de la classe Graphics et d'un objet Metafile. Pour afficher une image raster, vous avez besoin d'une instance de la classe Graphics et d'un objet Bitmap. L'instance de la classe Graphics fournit la méthode DrawImage qui reçoit l'objet Metafile ou Bitmap en tant qu'argument.
Types de fichiers et clonage
L'exemple de code suivant montre comment construire un objet Bitmap à partir du fichier Climber.jpg et affiche la bitmap. Le point de destination du coin supérieur gauche de l'image, (10, 10), est spécifié par les deuxième et troisième paramètres.
Dim myBitmap As New Bitmap("Climber.jpg")
myGraphics.DrawImage(myBitmap, 10, 10)
Bitmap myBitmap = new Bitmap("Climber.jpg");
myGraphics.DrawImage(myBitmap, 10, 10);
L'illustration suivante représente l'image.
Vous pouvez construire des objets Bitmap à partir de plusieurs formats de fichier graphique : BMP, GIF, JPEG, EXIF, PNG, TIFF et ICON.
L'exemple de code suivant montre comment construire des objets Bitmap à partir de plusieurs types de fichiers, puis affiche les bitmaps.
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)
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);
La classe Bitmap fournit une méthode Clone qui permet de créer une copie d'un objet Bitmap existant. La méthode Clone admet comme paramètre un rectangle source qui vous permet de spécifier la portion de la bitmap d'origine à copier. L'exemple de code suivant montre comment créer un objet Bitmap en clonant la moitié supérieure d'un objet Bitmap existant. Il dessine ensuite les deux images.
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)
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);
L'illustration suivante représente ces deux images.
Voir aussi
Tâches
Comment : créer des objets graphiques pour le dessin