Partager via


Guide pratique pour créer des objets graphiques pour le dessin

Avant de pouvoir dessiner des lignes et des formes, afficher du texte ou afficher et manipuler des images avec GDI+, vous devez créer un objet Graphics. L’objet Graphics représente une surface de dessin GDI+ et est l’objet utilisé pour créer des images graphiques.

Il existe deux étapes d’utilisation des graphiques :

  1. Création d’un objet Graphics.

  2. Utilisation de l’objet Graphics pour dessiner des lignes et des formes, afficher du texte ou afficher et manipuler des images.

Création d’un objet Graphics

Un objet graphique peut être créé de différentes façons.

Pour créer un objet graphique

  • Recevez une référence à un objet graphique dans le cadre de l'PaintEventArgs dans l’événement Paint d’un formulaire ou d’un contrôle. Il s’agit généralement de la façon dont vous obtenez une référence à un objet graphique lors de la création de code de peinture pour un contrôle. De même, vous pouvez également obtenir un objet graphique en tant que propriété de l'PrintPageEventArgs lors de la gestion de l’événement PrintPage pour un PrintDocument.

    -ou-

  • Appelez la méthode CreateGraphics d’un contrôle ou d’un formulaire pour obtenir une référence à un objet Graphics qui représente la surface de dessin de ce contrôle ou formulaire. Utilisez cette méthode si vous souhaitez dessiner sur un formulaire ou un contrôle qui existe déjà.

    -ou-

  • Créez un objet Graphics à partir de n’importe quel objet qui hérite de Image. Cette approche est utile lorsque vous souhaitez modifier une image déjà existante.

    Les sections suivantes fournissent des détails sur chacun de ces processus.

PaintEventArgs dans le gestionnaire d’événements Paint

Lorsque vous programmez l'PaintEventHandler pour les contrôles ou le PrintPage d’un PrintDocument, un objet graphique est fourni comme l’une des propriétés de PaintEventArgs ou de PrintPageEventArgs.

Pour obtenir une référence à un objet Graphics à partir de PaintEventArgs dans l’événement Paint

  1. Déclarez l’objet Graphics.

  2. Affectez la variable pour faire référence à l’objet Graphics passé dans le cadre de la PaintEventArgs.

  3. Insérez du code pour dessiner le formulaire ou le contrôle.

    L’exemple suivant montre comment référencer un objet Graphics à partir de l'PaintEventArgs dans l’événement Paint :

    Private Sub Form1_Paint(sender As Object, pe As PaintEventArgs) Handles _  
       MyBase.Paint  
       ' Declares the Graphics object and sets it to the Graphics object  
       ' supplied in the PaintEventArgs.  
       Dim g As Graphics = pe.Graphics  
       ' Insert code to paint the form here.  
    End Sub  
    
    private void Form1_Paint(object sender,
       System.Windows.Forms.PaintEventArgs pe)
    {  
       // Declares the Graphics object and sets it to the Graphics object  
       // supplied in the PaintEventArgs.  
       Graphics g = pe.Graphics;  
       // Insert code to paint the form here.  
    }  
    
    private:  
       void Form1_Paint(System::Object ^ sender,  
          System::Windows::Forms::PaintEventArgs ^ pe)  
       {  
          // Declares the Graphics object and sets it to the Graphics object  
          // supplied in the PaintEventArgs.  
          Graphics ^ g = pe->Graphics;  
          // Insert code to paint the form here.  
       }  
    

CreateGraphics, méthode

Vous pouvez également utiliser la méthode CreateGraphics d’un contrôle ou d’un formulaire pour obtenir une référence à un objet Graphics qui représente la surface de dessin de ce contrôle ou formulaire.

Pour créer un objet Graphics avec la méthode CreateGraphics

  • Appelez la méthode CreateGraphics du formulaire ou du contrôle sur lequel vous souhaitez afficher des graphiques.

    Dim g as Graphics  
    ' Sets g to a Graphics object representing the drawing surface of the  
    ' control or form g is a member of.  
    g = Me.CreateGraphics  
    
    Graphics g;  
    // Sets g to a graphics object representing the drawing surface of the  
    // control or form g is a member of.  
    g = this.CreateGraphics();  
    
    Graphics ^ g;  
    // Sets g to a graphics object representing the drawing surface of the  
    // control or form g is a member of.  
    g = this->CreateGraphics();  
    

Créer à partir d’un objet Image

En outre, vous pouvez créer un objet graphique à partir de n’importe quel objet dérivé de la classe Image.

Pour créer un objet Graphics à partir d’une image

  • Appelez la méthode Graphics.FromImage, en fournissant le nom de la variable Image à partir de laquelle vous souhaitez créer un objet Graphics.

    L’exemple suivant montre comment utiliser un objet Bitmap :

    Dim myBitmap as New Bitmap("C:\Documents and Settings\Joe\Pics\myPic.bmp")  
    Dim g as Graphics = Graphics.FromImage(myBitmap)  
    
    Bitmap myBitmap = new Bitmap(@"C:\Documents and
       Settings\Joe\Pics\myPic.bmp");  
    Graphics g = Graphics.FromImage(myBitmap);  
    
    Bitmap ^ myBitmap = gcnew  
       Bitmap("D:\\Documents and Settings\\Joe\\Pics\\myPic.bmp");  
    Graphics ^ g = Graphics::FromImage(myBitmap);  
    

Note

Vous pouvez uniquement créer des objets Graphics à partir de fichiers .bmp non indexés, tels que des fichiers de .bmp 16 bits, 24 bits et 32 bits. Chaque pixel de fichiers .bmp non indexés contient une couleur, contrairement aux pixels des fichiers .bmp indexés, qui contiennent un index dans une table de couleurs.

Dessin et manipulation de formes et d’images

Une fois qu’il a été créé, un objet Graphics peut être utilisé pour dessiner des lignes et des formes, afficher du texte ou afficher et manipuler des images. Les objets principaux utilisés avec l’objet Graphics sont les suivants :

  • Classe Pen utilisée pour dessiner des lignes, dessiner des formes ou afficher d’autres représentations géométriques.

  • Classe Brush : utilisée pour remplir des zones graphiques, telles que des formes remplies, des images ou du texte.

  • Classe Font : fournit une description des formes à utiliser lors du rendu du texte.

  • Structure Color : représente les différentes couleurs à afficher.

Pour utiliser l’objet Graphics que vous avez créé

Voir aussi