
W moim poprzednim artykule przedstawiłem przegląd naszego interfejsu API grafiki .NET — Aspose.Drawing for .NET. Oprócz tego widzieliśmy, jak tworzyć obrazy od podstaw lub rysować grafikę na istniejących obrazach za pomocą C#. W tym artykule pójdziemy o krok dalej i nauczymy się, jak tworzyć rysunki 2D, rysując różne obiekty graficzne w aplikacjach .NET, takich jak aplikacja internetowa ASP.NET, aplikacja Windows itp.
Poniżej znajdują się grafiki wektorowe, które zamierzamy narysować w naszych rysunkach przy użyciu interfejsu API grafiki .NET.
- Utwórz rysunek za pomocą C#
- Narysuj łuk na rysunku
- Narysuj krzywą Beziera na rysunku
- Narysuj krzywą kardynalną na rysunku
- Narysuj zamkniętą krzywą na rysunku
- Narysuj elipsę na rysunku
- Rysuj linie na rysunku
- Narysuj ścieżkę na rysunku
- Narysuj wielokąt na rysunku
- Narysuj prostokąt na rysunku
Zanim zaczniemy, upewnij się, że zainstalowałeś Aspose.Drawing for .NET w swojej aplikacji .NET. Możesz przeczytać o metodach instalacji w tym poście.
Utwórz rysunek od podstaw za pomocą C#
Przede wszystkim przyjrzyjmy się, jak utworzyć pusty rysunek i zapisać go jako obraz PNG. Kroki są proste jak bułka z masłem.
- Utwórz nowy obiekt Bitmap.
- Zapisz rysunek w formacie PNG za pomocą metody Bitmap.Save(string).
Możesz również zapisać rysunek w innych formatach graficznych. Poniższy przykładowy kod pokazuje, jak utworzyć rysunek od podstaw przy użyciu języka C#.
// Przykład tworzenia nowego rysunku w C# .NET i renderowania jako PNG.
// Zobacz https://github.com/aspose-drawing/Aspose.Drawing-for-.NET i https://docs.aspose.com/drawing/net/, aby uzyskać więcej przykładów.
// Utwórz nowy rysunek
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
// Zapisz rysunek
bitmap.Save(RunExamples.GetDataDir() + @"drawing.png");
Narysuj łuk w rysunku za pomocą C#
Sprawdźmy, jak narysować łuk na rysunku. Poniżej przedstawiono kroki, aby wykonać tę operację.
- Zdefiniuj instancję klasy Bitmap.
- Zainicjuj obiekt klasy Grafika z obiektu Bitmap.
- Utwórz obiekt Pióro, aby narysować łuk.
- Użyj metody Graphics.DrawArc(Pen, Single, Single, Single, Single, Single, Single), aby narysować łuk.
- Zapisz rysunek jako obraz metodą Bitmap.Save(string).
Poniższy przykładowy kod pokazuje, jak narysować łuk na rysunku przy użyciu języka C#.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawArc(pen, 0, 0, 700, 700, 0, 180);
bitmap.Save("DrawArc.png");

Narysuj splajn Beziera w rysunku przy użyciu języka C#
Poniżej przedstawiono kroki, aby narysować splajn Beziera na rysunku.
- Utwórz obiekt klasy Bitmap.
- Zainicjuj obiekt klasy Graphics z obiektu Bitmap.
- Utwórz obiekt Pióro, aby narysować grafikę.
- Użyj metody Graphics.DrawBezier(Pen, PointF, PointF, PointF, PointF), aby narysować krzywą Beziera.
- Zapisz rysunek metodą Bitmap.Save(string).
Poniższy przykładowy kod tworzy splajn Beziera przy użyciu języka C#.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
PointF p1 = new PointF(0, 0); // start point
PointF c1 = new PointF(0, 800); // first control point
PointF c2 = new PointF(1000, 0); // second control point
PointF p2 = new PointF(1000, 800); // end point
graphics.DrawBezier(pen, p1, c1, c2, p2);
bitmap.Save("DrawBezierSpline.png");

Dodaj splajn kardynalny w rysunku za pomocą C#
Wykonaj poniższe czynności, aby narysować splajn kardynalny przy użyciu naszego interfejsu API grafiki .NET.
- Utwórz instancję obiektu klasy Bitmap.
- Utwórz obiekt klasy Graphics z obiektu Bitmap.
- Utwórz obiekt Pióro do rysowania.
- Narysuj splajn kardynalny za pomocą metody Graphics.DrawCurve(Pen,Point[]).
- Zapisz rysunek jako obraz metodą Bitmap.Save(string).
Poniższy przykład kodu C# rysuje krzywą kardynalną przy użyciu Aspose.Drawing dla platformy .NET.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawCurve(pen, new Point[] { new Point(10, 700), new Point(250, 500), new Point(500, 10), new Point(750, 500), new Point(990, 700) });
bitmap.Save("DrawCardinalSpline.png");

Dodaj zamkniętą krzywą w rysunku za pomocą C#
Możesz także narysować zamkniętą krzywą w taki sam sposób, jak narysowałeś inne obiekty graficzne. Poniżej przedstawiono kroki w tym celu.
- Utwórz instancję obiektu Bitmap.
- Utwórz obiekt klasy Graphics i zainicjuj go z obiektu Bitmap.
- Utwórz obiekt Pióro do rysowania zamkniętej krzywej.
- Narysuj krzywą zamkniętą za pomocą metody Graphics.DrawClosedCurve(Pen,Point[]).
- Zapisz rysunek metodą Bitmap.Save(string).
Możesz narysować zamkniętą krzywą przy użyciu następującego przykładowego kodu C#.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawClosedCurve(pen, new Point[] { new Point(100, 700), new Point(350, 600), new Point(500, 500), new Point(650, 600), new Point(900, 700) });
bitmap.Save("DrawClosedCurve.png");

Narysuj elipsę na rysunku za pomocą C#
Poniżej przedstawiono kroki, aby narysować elipsę na rysunku przy użyciu Aspose.Drawing dla platformy .NET.
- Utwórz instancję klasy Bitmap.
- Zdefiniuj instancję klasy Graphics i zainicjuj ją z obiektu Bitmap.
- Użyj obiektu Pióro, aby narysować elipsę.
- Narysuj elipsę za pomocą metody Graphics.DrawEllipse(Pen, Single, Single, Single, Single).
- Zapisz rysunek jako obraz metodą Bitmap.Save(string).
Poniższy przykładowy kod pokazuje, jak narysować elipsę przy użyciu języka C#.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawEllipse(pen, 10, 10, 900, 700);
bitmap.Save("DrawEllipse.png");

Rysuj linie na rysunku za pomocą C#
Linie są jednym z podstawowych obiektów do tworzenia rysunków. Poniżej przedstawiono kroki, aby narysować linie na rysunku za pomocą interfejsu API grafiki Aspose.
- Utwórz instancję obiektu Bitmap.
- Utwórz nowy obiekt Graphics i zainicjuj go z obiektu Bitmap.
- Zdefiniuj obiekt Pióro, aby narysować linię.
- Narysuj linię metodą Graphics.DrawLine(Pen, Int32, Int32, Int32, Int32).
- Zapisz rysunek metodą Bitmap.Save(string).
Poniższy przykładowy kod pokazuje, jak rysować linie na rysunku przy użyciu języka C#.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawLine(pen, 10, 700, 500, 10);
graphics.DrawLine(pen, 500, 10, 990, 700);
bitmap.Save("DrawLines.png");

Narysuj ścieżkę w rysunku za pomocą C#
Poniżej przedstawiono kroki rysowania ścieżki w rysunku przy użyciu języka C#.
- Utwórz instancję obiektu Bitmap.
- Utwórz obiekt klasy Graphics i zainicjuj go z obiektu Bitmap.
- Zdefiniuj obiekt Pióro, aby narysować ścieżkę.
- Utwórz instancję klasy GraphicsPath.
- Dodaj grafikę do kolekcji ścieżek.
- Narysuj ścieżkę za pomocą metody Graphics.DrawPath(Pen, GraphicsPath).
- Zapisz rysunek metodą Bitmap.Save(string).
Poniższy przykładowy kod pokazuje, jak narysować ścieżkę w rysunku przy użyciu języka C#.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
using System.Drawing.Drawing2D;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
GraphicsPath path = new GraphicsPath();
path.AddLine(100, 100, 1000, 400);
path.AddLine(1000, 600, 300, 600);
path.AddRectangle(new Rectangle(500, 350, 200, 400));
path.AddEllipse(10, 250, 450, 300);
graphics.DrawPath(pen, path);
bitmap.Save("DrawPath.png");

Narysuj wielokąt na rysunku za pomocą C#
Poniżej przedstawiono kroki, aby narysować wielokąt w rysunku przy użyciu Aspose.Drawing dla platformy .NET.
- Utwórz instancję obiektu Bitmap.
- Zdefiniuj obiekt Graphics i zainicjuj go z obiektu Bitmap.
- Zdefiniuj obiekt Pióro, aby narysować wielokąt.
- Narysuj wielokąt metodą Graphics.DrawPolygon(Pen,Point[]).
- Zapisz rysunek metodą Bitmap.Save(string).
W ten sposób możesz narysować wielokąt na rysunku za pomocą języka C#.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawPolygon(pen, new Point[] { new Point(100, 100), new Point(500, 700), new Point(900, 100) });
bitmap.Save("DrawPolygon.png");

Narysuj prostokąt w rysunku za pomocą C#
Na koniec rysowanie prostokąta. Poniżej przedstawiono kroki, aby narysować prostokąt.
- Utwórz obiekt Bitmap.
- Utwórz obiekt Graphics i zainicjuj go z obiektu Bitmap.
- Zdefiniuj obiekt Pióro, aby narysować prostokąt.
- Narysuj prostokąt za pomocą metody Graphics.DrawRectangle(Pen, Int32, Int32, Int32, Int32).
- Zapisz rysunek metodą Bitmap.Save(string).
Poniższy przykładowy kod C# rysuje prostokąt w rysunku.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawRectangle(pen, 10, 10, 900, 700);
bitmap.Save("DrawRectangle.png");

Wniosek
W tym artykule zobaczyliśmy, jak można programowo rysować różne obiekty graficzne w rysunku przy użyciu języka C#. Przewodnik krok po kroku i próbki kodu pokazały, jak rysować linie, prostokąty, wielokąty, łuki, splajn Beziera, splajn kardynalny, krzywe i elipsy na rysunkach. Możesz dowiedzieć się więcej o naszym interfejsie API grafiki .NET, korzystając z dokumentacji.