
У моїй попередній статті я дав вам огляд нашого .NET Graphics API - Aspose.Drawing for .NET. Крім того, ми побачили, як створювати зображення з нуля або малювати графіку на існуючих зображеннях за допомогою C#. У цій статті ми зробимо крок вперед і навчимося створювати двовимірні малюнки, малюючи різні графічні об’єкти в програмах .NET, таких як веб-програма ASP.NET, програма Windows тощо.
Нижче наведено векторну графіку, яку ми будемо малювати в наших малюнках за допомогою .NET Graphics API.
- Створення креслення за допомогою C#
- Намалюйте дугу на малюнку
- Намалюйте сплайн Безьє на малюнку
- Намалюйте кардинальний сплайн на кресленні
- Намалюйте замкнуту криву на малюнку
- Намалюйте еліпс на малюнку
- Малювати лінії на малюнку
- Намалюйте контур на малюнку
- Накресліть багатокутник на малюнку
- Намалювати прямокутник на малюнку
Перш ніж почати, переконайтеся, що ви встановили Aspose.Drawing for .NET у своїй програмі .NET. Ви можете прочитати про методи встановлення в цій публікації.
Створення креслення з нуля за допомогою C#
Перш за все, давайте розглянемо, як створити порожній малюнок і зберегти його як зображення PNG. Кроки прості, як пиріг.
- Створіть новий об’єкт Bitmap.
- Збережіть малюнок у форматі PNG за допомогою методу Bitmap.Save(string).
Ви також можете зберегти малюнок в інших форматах зображень. У наведеному нижче прикладі коду показано, як створити креслення з нуля за допомогою C#.
// Приклад створення нового малюнка в C# .NET і візуалізації у форматі PNG.
// Більше прикладів див. на https://github.com/aspose-drawing/Aspose.Drawing-for-.NET і https://docs.aspose.com/drawing/net/.
// Створіть новий малюнок
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
// Зберегти малюнок
bitmap.Save(RunExamples.GetDataDir() + @"drawing.png");
Намалюйте дугу в кресленні за допомогою C#
Давайте перевіримо, як намалювати дугу на малюнку. Нижче наведено кроки для виконання цієї операції.
- Визначте екземпляр класу Bitmap.
- Ініціалізуйте об’єкт класу Graphics з об’єкта Bitmap.
- Створіть об’єкт Pen, щоб намалювати дугу.
- Використовуйте метод Graphics.DrawArc(Pen, Single, Single, Single, Single, Single, Single), щоб намалювати дугу.
- Збережіть малюнок як зображення за допомогою методу Bitmap.Save(string).
У наведеному нижче прикладі коду показано, як намалювати дугу на кресленні за допомогою C#.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку 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");

Намалюйте сплайн Безьє в кресленні за допомогою C#
Нижче наведено кроки, щоб намалювати сплайн Безьє на малюнку.
- Створіть об’єкт класу Bitmap.
- Ініціалізуйте об’єкт класу Graphics з об’єкта Bitmap.
- Створіть об’єкт Pen, щоб намалювати графіку.
- Використовуйте метод Graphics.DrawBezier(Pen, PointF, PointF, PointF, PointF), щоб намалювати сплайн Безьє.
- Збережіть малюнок за допомогою методу Bitmap.Save(string).
Наведений нижче приклад коду створює сплайн Безьє за допомогою C#.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку 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");

Додайте кардинальний сплайн у малюнок за допомогою C#
Виконайте наступні кроки, щоб намалювати кардинальний сплайн за допомогою нашого .NET Graphics API.
- Створіть екземпляр об’єкта класу Bitmap.
- Створіть об’єкт класу Graphics з об’єкта Bitmap.
- Створіть об’єкт Pen для малювання.
- Намалюйте кардинальний сплайн за допомогою методу Graphics.DrawCurve(Pen,Point[]).
- Збережіть малюнок як зображення за допомогою методу Bitmap.Save(string).
Наведений нижче приклад коду C# малює кардинальний сплайн за допомогою Aspose.Drawing for .NET.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку 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");

Додайте замкнуту криву в малюнок за допомогою C#
Ви також можете намалювати замкнуту криву так само, як ви малювали інші графічні об’єкти. Нижче наведено кроки для цього.
- Створіть об’єкт Bitmap.
- Створіть об’єкт класу Graphics та ініціалізуйте його з об’єкта Bitmap.
- Створіть об’єкт Pen для малювання замкнутої кривої.
- Намалюйте замкнуту криву за допомогою методу Graphics.DrawClosedCurve(Pen,Point[]).
- Збережіть малюнок за допомогою методу Bitmap.Save(string).
Ви можете намалювати замкнуту криву за допомогою наведеного нижче прикладу коду C#.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку 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");

Намалюйте еліпс на кресленні за допомогою C#
Нижче наведено кроки для малювання еліпса на малюнку за допомогою Aspose.Drawing for .NET.
- Створіть екземпляр класу Bitmap.
- Визначте екземпляр класу Graphics та ініціалізуйте його з об’єкта Bitmap.
- Використовуйте об’єкт Pen, щоб намалювати еліпс.
- Намалюйте еліпс за допомогою методу Graphics.DrawEllipse(Pen, Single, Single, Single, Single).
- Збережіть малюнок як зображення за допомогою методу Bitmap.Save(string).
У наведеному нижче прикладі коду показано, як намалювати еліпс за допомогою C#.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку 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");

Малювання ліній на малюнку за допомогою C#
Лінії є одним з основних об’єктів для створення малюнків. Нижче наведено кроки для малювання ліній на малюнку за допомогою графічного API Aspose.
- Створіть об’єкт Bitmap.
- Створіть новий об’єкт Graphics та ініціалізуйте його з об’єкта Bitmap.
- Визначте об’єкт Pen, щоб намалювати лінію.
- Намалюйте лінію за допомогою методу Graphics.DrawLine(Pen, Int32, Int32, Int32, Int32).
- Збережіть малюнок за допомогою методу Bitmap.Save(string).
У наведеному нижче прикладі коду показано, як малювати лінії на малюнку за допомогою C#.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку 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");

Намалюйте шлях у кресленні за допомогою C#
Нижче наведено кроки, щоб намалювати шлях у кресленні за допомогою C#.
- Створіть об’єкт Bitmap.
- Створіть об’єкт класу Graphics та ініціалізуйте його з об’єкта Bitmap.
- Визначте об’єкт Pen, щоб намалювати контур.
- Створіть екземпляр класу GraphicsPath.
- Додайте графіку до колекції шляхів.
- Намалюйте шлях за допомогою методу Graphics.DrawPath(Pen, GraphicsPath).
- Збережіть малюнок за допомогою методу Bitmap.Save(string).
У наведеному нижче прикладі коду показано, як намалювати шлях у кресленні за допомогою C#.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку 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");

Намалюйте багатокутник на малюнку за допомогою C#
Нижче наведено кроки для малювання багатокутника в межах малюнка за допомогою Aspose.Drawing for .NET.
- Створіть об’єкт Bitmap.
- Визначте об’єкт Graphics та ініціалізуйте його з об’єкта Bitmap.
- Визначте об’єкт Pen, щоб намалювати багатокутник.
- Намалюйте багатокутник за допомогою методу Graphics.DrawPolygon(Pen,Point[]).
- Збережіть малюнок за допомогою методу Bitmap.Save(string).
Ось як ви можете намалювати багатокутник у кресленні за допомогою C#.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку 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");

Намалюйте прямокутник у кресленні за допомогою C#
І останнє, але не менш важливе, малювання прямокутника. Нижче наведено кроки, щоб намалювати прямокутник.
- Створіть об’єкт Bitmap.
- Створіть об’єкт Graphics та ініціалізуйте його з об’єкта Bitmap.
- Визначте об’єкт Pen, щоб намалювати прямокутник.
- Намалюйте прямокутник за допомогою методу Graphics.DrawRectangle(Pen, Int32, Int32, Int32, Int32).
- Збережіть малюнок за допомогою методу Bitmap.Save(string).
Наведений нижче приклад коду C# малює прямокутник у кресленні.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку 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");

Висновок
У цій статті ми побачили, як різні графічні об’єкти можна намалювати на малюнку програмно за допомогою C#. Покрокове керівництво та зразки коду продемонстрували, як малювати лінії, прямокутники, багатокутники, дуги, сплайн Безьє, кардинальний сплайн, криві та еліпси на малюнках. Ви можете дізнатися більше про наш .NET Graphics API, використовуючи документацію.