Freigeben über


Erstellen von Graphics-Objekten zum Zeichnen

Bevor Sie Linien und Formen zeichnen, Text rendern oder Bilder mit GDI+ anzeigen und bearbeiten können, müssen Sie ein Graphics-Objekt erstellen. Das Graphics-Objekt stellt eine GDI+-Zeichnungsoberfläche dar und ist das Objekt, das zum Erstellen grafischer Bilder verwendet wird.

Es gibt zwei Schritte beim Arbeiten mit Grafiken:

  1. Erstellen eines Graphics-Objekts

  2. Verwenden des Graphics-Objekts zum Zeichnen von Linien und Formen, Rendern von Text oder Anzeigen und Bearbeiten von Bildern.

Erstellen eines Grafikobjekts

Ein Grafikobjekt kann auf unterschiedliche Weise erstellt werden.

So erstellen Sie ein Grafikobjekt

  • Empfangen eines Verweises auf ein Grafikobjekt als Teil von PaintEventArgsim Paint-Ereignis eines Formulars oder Steuerelements Dies ist die gängige Weise, wie Sie einen Verweis auf ein Grafikobjekt erhalten, wenn Sie Code zum Zeichnen für ein Steuerelement erstellen. Ebenso können Sie ein Grafikobjekt auch als Eigenschaft des PrintPageEventArgs-Ereignisses erhalten, wenn das PrintPage-Ereignis für ein PrintDocument behandelt wird.

    –oder–

  • Rufen Sie die CreateGraphics Methode eines Steuerelements oder Formulars auf, um einen Verweis auf ein Graphics-Objekt abzurufen, das die Zeichnungsoberfläche dieses Steuerelements oder Formulars darstellt. Verwenden Sie diese Methode, wenn Sie auf einem Formular oder Steuerelement zeichnen möchten, das bereits vorhanden ist.

    –oder–

  • Erstellen Sie ein Graphics-Objekt aus einem beliebigen Objekt, das von Image erbt. Dieser Ansatz ist nützlich, wenn Sie ein bereits vorhandenes Bild ändern möchten.

    In den folgenden Abschnitten werden Details zu den einzelnen Prozessen beschrieben.

PaintEventArgs im Paint-Ereignishandler

Beim Programmieren des PaintEventHandler für Steuerelemente oder des PrintPage für ein PrintDocumentwird ein Grafikobjekt als eine der Eigenschaften von PaintEventArgs oder PrintPageEventArgsbereitgestellt.

So rufen Sie einen Verweis auf ein Grafikobjekt aus den PaintEventArgs im Paint-Ereignis ab

  1. Deklarieren Sie das Graphics-Objekt.

  2. Weisen Sie die Variable zu, um auf das als Teil von PaintEventArgs übergebene Graphics-Objekt zu verweisen.

  3. Fügen Sie Code ein, um das Formular oder Steuerelement zu zeichnen.

    Im folgenden Beispiel wird gezeigt, wie sie auf ein Graphics-Objekt aus den PaintEventArgs im Paint-Ereignis verweisen:

    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-Methode

Sie können auch die CreateGraphics-Methode eines Steuerelements oder Formulars verwenden, um einen Verweis auf ein Graphics -Objekt abzurufen, das die Zeichnungsoberfläche dieses Steuerelements oder Formulars darstellt.

So erstellen Sie ein Graphics-Objekt mit der CreateGraphics-Methode

  • Rufen Sie die Methode CreateGraphics des Formulars oder der Steuerung auf, auf der Sie Grafiken rendern möchten.

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

Erstellen aus einem Imageobjekt

Darüber hinaus können Sie ein Grafikobjekt aus jedem Objekt erstellen, das von der Image Klasse abgeleitet wird.

So erstellen Sie ein Grafikobjekt aus einem Bild

  • Rufen Sie die Graphics.FromImage-Methode auf, und geben Sie den Namen der Bildvariable an, aus der Sie ein Graphics-Objekt erstellen möchten.

    Das folgende Beispiel zeigt, wie Sie ein Bitmap-Objekt verwenden:

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

Anmerkung

Sie können nur Graphics Objekte aus nicht indizierten .bmp Dateien erstellen, z. B. 16-Bit-, 24-Bit- und 32-Bit-.bmp-Dateien. Jedes Pixel von nicht indizierten BMP-Dateien enthält eine Farbe, im Gegensatz zu Pixeln indizierter BMP-Dateien, die einen Index für eine Farbtabelle enthalten.

Zeichnen und Bearbeiten von Formen und Bildern

Nachdem es erstellt wurde, kann ein Graphics-Objekt verwendet werden, um Linien und Formen zu zeichnen, Text zu rendern oder Bilder anzuzeigen und zu bearbeiten. Die Hauptobjekte, die mit dem Graphics-Objekt verwendet werden, sind:

  • Die klasse Pen – Wird zum Zeichnen von Linien, zum Gliedern von Formen oder zum Rendern anderer geometrischer Darstellungen verwendet.

  • Die klasse Brush – Wird zum Ausfüllen von Grafikbereichen verwendet, z. B. gefüllte Formen, Bilder oder Text.

  • Die Font Klasse – Stellt eine Beschreibung der Formen bereit, die beim Rendern von Text verwendet werden sollen.

  • Die Struktur Color stellt die verschiedenen Farben dar, die angezeigt werden sollen.

So verwenden Sie das Grafikobjekt, das Sie erstellt haben

Weitere Informationen