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:
Erstellen eines Graphics-Objekts
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
Deklarieren Sie das Graphics-Objekt.
Weisen Sie die Variable zu, um auf das als Teil von PaintEventArgs übergebene Graphics-Objekt zu verweisen.
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
Arbeiten Sie mit dem oben aufgeführten geeigneten Objekt zusammen, um zu zeichnen, was Sie benötigen.
Weitere Informationen finden Sie in den folgenden Themen:
Zum Rendern von Weitere Informationen Linien Anleitung: Eine Linie auf einem Windows-Formular zeichnen Formen Zeichnen der Kontur einer Form Text Anleitung: Text auf einem Windows-Formular zeichnen Bilder Vorgehensweise: Rendern von Bildern mit GDI+
Weitere Informationen
.NET Desktop feedback