Comment : 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 Graphics objet. 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 Graphics objet.

  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’événement PaintEventArgsPaint 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’événement PrintPageEventArgs lors de la gestion de l’événement PrintPage pour un PrintDocument.

    -ou-

  • Appelez la CreateGraphics méthode d’un contrôle ou d’un formulaire pour obtenir une référence à un Graphics objet 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 Graphics objet à 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

Lors de la programmation des PaintEventHandler contrôles ou PrintPage d’un PrintDocumentobjet graphique, un objet graphique est fourni en tant que l’une des propriétés de PaintEventArgs ou 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 du PaintEventArgs.

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

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

    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 CreateGraphics méthode d’un contrôle ou d’un formulaire pour obtenir une référence à un Graphics objet 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 CreateGraphics méthode 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 Image classe.

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

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

    L’exemple suivant montre comment utiliser un Bitmap objet :

    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);  
    

Remarque

Vous pouvez uniquement créer des Graphics objets à partir de fichiers .bmp non indexés, tels que des fichiers .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 Graphics objet 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