Formen in C# zeichnen

Es ist oft erforderlich, verschiedene graphische Objekte zu erzeugen, indem Formen einschließlich Kreise, Linien, Rechtecke usw. gezeichnet werden. Diese Formen könnten auch zum Kommentieren der Bilder verwendet werden. In diesem Artikel erfahren Sie, wie Sie programmgesteuert verschiedene Formen in C# zeichnen. Wir zeigen, wie man Linien, Ellipsen, Bögen und Rechtecke zeichnet und ihre Bilder erzeugt.

C# API zum Zeichnen von Formen – kostenloser Download

Um verschiedene Arten von Formen zu zeichnen, verwenden wir Aspose.Imaging for .NET. Es ist eine erstaunliche Bildbearbeitungs-API, die eine breite Palette von Funktionen zum Bearbeiten von Bildern und Erstellen von Zeichnungen bietet. Sie können die API entweder herunterladen oder von NuGet installieren.

PM> Install-Package Aspose.Imaging

Zeichnen Sie eine Linie mit C#

Im Folgenden sind die Schritte zum Zeichnen einer Linie in C# aufgeführt.

  • Erstellen Sie zuerst ein Objekt der Klasse BmpOptions und legen Sie Bits pro Pixel mit der Eigenschaft BitsPerPixel fest.
  • Weisen Sie dann StreamSource mithilfe der Eigenschaft Source zu.
  • Erstellen Sie ein neues Bild und initialisieren Sie es mit dem BmpOptions Objekt und der Höhe und Breite des Bildes.
  • Erstellen Sie ein Objekt der Klasse Graphics und initialisieren Sie es mit dem Objekt Image.
  • Löschen Sie die Oberfläche des Bildes mit etwas Farbe, indem Sie die Methode Graphics.Clear() verwenden.
  • Zeichnen Sie eine Linie mit der Methode Graphics.DrawLine(Pen, int, int, int, int).
  • Generieren und speichern Sie das Bild mit der Methode Image.Save().

Das folgende Codebeispiel zeigt, wie Sie in C# eine Linie zeichnen.

// Erstellen Sie BmpOptionen
BmpOptions bmpCreateOptions = new BmpOptions();
bmpCreateOptions.BitsPerPixel = 32;

// Definieren Sie die Quelleigenschaft für die Instanz von BmpOptions
bmpCreateOptions.Source = new StreamSource();

// Erstellt eine Instanz von Image und ruft die Methode create durch Übergeben von auf
// bmpCreateOptions Objekt
Image image = Image.Create(bmpCreateOptions, 500, 500);

// Erstellen und initialisieren Sie eine Instanz der Graphics Klasse
Graphics graphic = new Graphics(image);

// Löschen Sie die Bildoberfläche mit weißer Farbe
graphic.Clear(Color.White);

// Zeichnen Sie eine gepunktete Linie, indem Sie das Pen Objekt mit blauer Farbe und angeben
// Punkte koordinieren
graphic.DrawLine(new Pen(Color.Blue, 3), 18, 18, 200, 200);
graphic.DrawLine(new Pen(Color.Blue, 3), 18, 200, 200, 18);

// Zeichnen Sie eine durchgehende Linie, indem Sie das Pen Objekt mit Solid angeben
// Pinsel mit roter Farbe und zwei Punktstrukturen
graphic.DrawLine(new Pen(new SolidBrush(Color.Red), 3),
        new Point(18, 18), new Point(18, 200));

// Zeichnen Sie eine durchgehende Linie, indem Sie das Pen Objekt mit Solid angeben
// Pinsel mit weißer Farbe und zwei Punktstrukturen
graphic.DrawLine(new Pen(new SolidBrush(Color.Orange), 3),
        new Point(200, 18), new Point(18, 18));

// Alle Änderungen speichern
image.Save("draw_lines.bmp");

Das Folgende ist die Ausgabe des obigen Codebeispiels.

Linie zeichnen in C#

Zeichnen Sie eine Ellipse mit C#

Im Folgenden sind die Schritte zum Zeichnen einer Ellipse in C# aufgeführt.

  • Erstellen Sie zuerst ein Objekt der Klasse BmpOptions und legen Sie Bits pro Pixel mit der Eigenschaft BitsPerPixel fest.
  • Weisen Sie dann StreamSource mithilfe der Eigenschaft Source zu.
  • Erstellen Sie ein neues Bild und initialisieren Sie es mit dem BmpOptions Objekt und der Höhe und Breite des Bildes.
  • Erstellen Sie ein Objekt der Klasse Graphics und initialisieren Sie es mit dem Objekt Image.
  • Löschen Sie die Oberfläche des Bildes mit etwas Farbe, indem Sie die Methode Graphics.Clear() verwenden.
  • Zeichnen Sie eine Ellipse mit der Methode Graphics.DrawEllipse(Pen, Rectangle).
  • Generieren und speichern Sie das Bild mit der Methode Image.Save().

Das folgende Codebeispiel zeigt, wie in C# eine Ellipse auf einem Bild gezeichnet wird.

// Erstellen Sie BmpOptionen
BmpOptions bmpCreateOptions = new BmpOptions();
bmpCreateOptions.BitsPerPixel = 32;

// Definieren Sie die Quelleigenschaft für die Instanz von BmpOptions
bmpCreateOptions.Source = new StreamSource();

// Erstellt eine Instanz von Image und ruft die Methode create durch Übergeben von auf
// bmpCreateOptions Objekt
Image image = Image.Create(bmpCreateOptions, 500, 500);

// Erstellen und initialisieren Sie eine Instanz der Graphics Klasse
Graphics graphic = new Graphics(image);

// Löschen Sie die Bildoberfläche mit weißer Farbe
graphic.Clear(Color.White);

// Zeichnen Sie eine gepunktete Ellipsenform, indem Sie das Stiftobjekt mit Rot angeben
// Farbe und ein umgebendes Rechteck
graphic.DrawEllipse(new Pen(Color.Red, 3), new Rectangle(60, 40, 70, 120));

// Zeichnen Sie eine kontinuierliche Ellipsenform, indem Sie das Stiftobjekt angeben
// solid brush with blue Farbe und ein umgebendes Rechteck
graphic.DrawEllipse(new Pen(new SolidBrush(Color.Blue), 3),
        new Rectangle(40, 60, 120, 70));

// Alle Änderungen speichern
image.Save("draw_ellipse.bmp");

Das Folgende ist die Ausgabe des obigen Codebeispiels.

Ellipse in C# zeichnen

Zeichnen Sie einen Bogen mit C#

Im Folgenden sind die Schritte zum Zeichnen eines Bogens in C# aufgeführt.

Das folgende Codebeispiel zeigt, wie in C# ein Bogen auf einem Bild gezeichnet wird.

// Erstellen Sie BmpOptionen
BmpOptions bmpCreateOptions = new BmpOptions();
bmpCreateOptions.BitsPerPixel = 32;

// Definieren Sie die Quelleigenschaft für die Instanz von BmpOptions
bmpCreateOptions.Source = new StreamSource();

// Erstellt eine Instanz von Image und ruft die Methode create durch Übergeben von auf
// bmpCreateOptions Objekt
Image image = Image.Create(bmpCreateOptions, 500, 500);

// Erstellen und initialisieren Sie eine Instanz der Graphics Klasse
Graphics graphic = new Graphics(image);

// Löschen Sie die Bildoberfläche mit weißer Farbe
graphic.Clear(Color.White);

// Zeichnen Sie eine gepunktete Bogenform, indem Sie das Stiftobjekt mit Rotschwarz angeben
// Farbe und Koordinaten, Höhe, Breite, Start und Endwinkel
int width = 200;
int height = 300;
int startAngle = 45;
int sweepAngle = 270;

// Bogen zum Bildschirm zeichnen
graphic.DrawArc(new Pen(Color.Black, 3), 0, 0, width, height, startAngle, sweepAngle);

// Alle Änderungen speichern
image.Save("draw_arc.bmp");

Das Folgende ist die Ausgabe des obigen Codebeispiels.

Bogen zeichnen in C#

Zeichnen Sie ein Rechteck mit C#

Im Folgenden sind die Schritte zum Zeichnen eines Rechtecks in C# aufgeführt.

  • Erstellen Sie zuerst ein Objekt der Klasse BmpOptions und legen Sie Bits pro Pixel mit der Eigenschaft BitsPerPixel fest.
  • Weisen Sie dann StreamSource mithilfe der Eigenschaft Source zu.
  • Erstellen Sie ein neues Bild und initialisieren Sie es mit dem BmpOptions Objekt und der Höhe und Breite des Bildes.
  • Erstellen Sie ein Objekt der Klasse Graphics und initialisieren Sie es mit dem Objekt Image.
  • Löschen Sie die Oberfläche des Bildes mit etwas Farbe, indem Sie die Methode Graphics.Clear() verwenden.
  • Zeichnen Sie ein Rechteck mit der Methode Graphics.DrawRectangle(Pen, Rectangle).
  • Generieren und speichern Sie das Bild mit der Methode Image.Save().

Das folgende Codebeispiel zeigt, wie in C# ein Rechteck auf einem Bild gezeichnet wird.

// Erstellen Sie BmpOptionen
BmpOptions bmpCreateOptions = new BmpOptions();
bmpCreateOptions.BitsPerPixel = 32;

// Definieren Sie die Quelleigenschaft für die Instanz von BmpOptions
bmpCreateOptions.Source = new StreamSource();

// Erstellt eine Instanz von Image und ruft die Methode create durch Übergeben von auf
// bmpCreateOptions Objekt
Image image = Image.Create(bmpCreateOptions, 500, 500);

// Erstellen und initialisieren Sie eine Instanz der Graphics Klasse
Graphics graphic = new Graphics(image);

// Löschen Sie die Bildoberfläche mit weißer Farbe
graphic.Clear(Color.White);

// Zeichnen Sie eine gepunktete Rechteckform, indem Sie festlegen, dass das Stiftobjekt rot ist
// Farbe und eine rechteckige Struktur
graphic.DrawRectangle(new Pen(Color.Red, 3),
        new Rectangle(60, 40, 70, 120));

// Zeichnen Sie eine durchgehende Rechteckform, indem Sie das Stiftobjekt mit angeben
// solid brush with blue Farbe und eine rechteckige Struktur
graphic.DrawRectangle(new Pen(new SolidBrush(Color.Blue), 3),
        new Rectangle(40, 60, 120, 70));

// Alle Änderungen speichern
image.Save("draw_reactangle.bmp");

Das Folgende ist die Ausgabe des obigen Codebeispiels.

Rechteck in C# zeichnen

C# .NET Image Drawing API – Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten und Formen ohne Evaluierungseinschränkungen zeichnen.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie Formen in C# zeichnen. Wir haben behandelt, wie Linien, Ellipsen, Bögen und Rechtecke programmgesteuert auf Bildern gezeichnet werden. Sie können die bereitgestellten Codebeispiele problemlos in Ihre C#-Anwendungen integrieren.

Weiterlesen

Weitere Informationen zur .NET bildverarbeitungs-API finden Sie unter Dokumentation. Außerdem können Sie uns Ihre Fragen über unser Forum mitteilen.

Siehe auch