Малювати графіку за допомогою C#

У моїй попередній статті я дав вам огляд нашого .NET Graphics API - Aspose.Drawing for .NET. Крім того, ми побачили, як створювати зображення з нуля або малювати графіку на існуючих зображеннях за допомогою C#. У цій статті ми зробимо крок вперед і навчимося створювати двовимірні малюнки, малюючи різні графічні об’єкти в програмах .NET, таких як веб-програма ASP.NET, програма Windows тощо.

Нижче наведено векторну графіку, яку ми будемо малювати в наших малюнках за допомогою .NET Graphics API.

Перш ніж почати, переконайтеся, що ви встановили 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#

Давайте перевіримо, як намалювати дугу на малюнку. Нижче наведено кроки для виконання цієї операції.

У наведеному нижче прикладі коду показано, як намалювати дугу на кресленні за допомогою 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#

Нижче наведено кроки, щоб намалювати сплайн Безьє на малюнку.

Наведений нижче приклад коду створює сплайн Безьє за допомогою 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, використовуючи документацію.

Дивись також