Vẽ đồ họa bằng C#

Trong bài viết trước đây của tôi, tôi đã cung cấp cho bạn tổng quan về API đồ họa .NET của chúng tôi - Aspose.Drawing for .NET. Cùng với đó, chúng ta đã thấy cách tạo hình ảnh từ đầu hoặc vẽ đồ họa trên hình ảnh hiện có bằng C#. Trong bài viết này, chúng ta sẽ đi trước một bước và tìm hiểu cách tạo bản vẽ 2D bằng cách vẽ các đối tượng đồ họa khác nhau trong các ứng dụng .NET chẳng hạn như ứng dụng web ASP.NET, ứng dụng Windows, v.v.

Sau đây là đồ họa vector mà chúng ta sẽ vẽ trong bản vẽ của mình bằng .NET Graphics API.

Trước khi bắt đầu, hãy đảm bảo rằng bạn đã cài đặt Aspose.Drawing cho .NET trong ứng dụng .NET của mình. Bạn có thể đọc về các phương pháp cài đặt trong bài đăng này.

Tạo bản vẽ từ đầu bằng C#

Trước hết, chúng ta hãy xem cách tạo một bản vẽ trống và lưu nó dưới dạng hình ảnh PNG. Các bước đơn giản như chiếc bánh.

Bạn cũng có thể lưu bản vẽ ở các định dạng hình ảnh khác. Mẫu mã sau đây cho biết cách tạo bản vẽ từ đầu bằng C#.

// Ví dụ để tạo một bản vẽ mới trong C# .NET và hiển thị dưới dạng PNG. 
// Xem https://github.com/aspose-drawing/Aspose.Drawing-for-.NET và https://docs.aspose.com/drawing/net/ để biết thêm ví dụ.
// Tạo một bản vẽ mới
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
// Lưu bản vẽ
bitmap.Save(RunExamples.GetDataDir() + @"drawing.png");

Vẽ một Arc trong Drawing bằng C#

Hãy xem cách vẽ một vòng cung trong bản vẽ. Sau đây là các bước để thực hiện thao tác này.

Mẫu mã sau đây cho biết cách vẽ một cung trong bản vẽ bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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");
Vẽ một vòng cung

Vẽ một Bezier Spline trong Drawing bằng C#

Sau đây là các bước để vẽ một bezier spline trong một bản vẽ.

Mẫu mã sau đây tạo Bezier Spline bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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");
Vẽ Bezier Spline

Thêm một Cardinal Spline trong Drawing bằng C#

Sử dụng các bước sau để vẽ một đường trục chính bằng .NET Graphics API của chúng tôi.

  • Khởi tạo một đối tượng của lớp Bitmap.
  • Tạo một đối tượng thuộc lớp Graphics từ đối tượng Bitmap.
  • Tạo đối tượng Pen để vẽ.
  • Vẽ đường cong chính bằng phương pháp Graphics.DrawCurve(Pen,Point[]).
  • Lưu bản vẽ dưới dạng hình ảnh bằng phương pháp Bitmap.Save(string).

Mẫu mã C# sau đây vẽ một đường trục chính bằng cách sử dụng Aspose.Drawing cho .NET.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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");
Vẽ đường cong chính

Thêm một đường cong khép kín trong bản vẽ bằng C#

Bạn cũng có thể vẽ một đường cong khép kín giống như cách bạn đã vẽ các đối tượng đồ họa khác. Sau đây là các bước cho việc này.

Bạn có thể vẽ một đường cong khép kín bằng mẫu mã C# sau đây.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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");
Vẽ đường cong khép kín

Vẽ hình elip trong bản vẽ bằng C#

Sau đây là các bước để vẽ hình elip trong bản vẽ bằng Aspose.Drawing for .NET.

Mẫu mã sau đây cho biết cách vẽ hình elip bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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");
Vẽ hình elip

Vẽ các đường trong bản vẽ bằng C#

Đường kẻ là một trong những đối tượng cơ bản để tạo ra các bản vẽ. Sau đây là các bước để vẽ các đường trong bản vẽ bằng cách sử dụng API đồ họa của Aspose.

Mẫu mã sau đây cho biết cách vẽ các đường trong bản vẽ bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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");
Vẽ các đường

Vẽ một đường Path trong Drawing bằng C#

Sau đây là các bước để vẽ đường dẫn trong bản vẽ bằng C#.

  • Khởi tạo đối tượng Bitmap.
  • Tạo một đối tượng thuộc lớp Graphics và khởi tạo nó từ đối tượng Bitmap.
  • Xác định đối tượng Pen để vẽ đường dẫn.
  • Tạo một thể hiện của lớp GraphicsPath.
  • Thêm đồ họa vào bộ sưu tập đường dẫn.
  • Vẽ đường dẫn bằng phương pháp Graphics.DrawPath(Pen, GraphicsPath).
  • Lưu bản vẽ bằng phương thức Bitmap.Save(string).

Mẫu mã sau đây cho biết cách vẽ đường dẫn trong bản vẽ bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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");
Vẽ đường dẫn

Vẽ Đa giác trong Bản vẽ bằng C#

Sau đây là các bước để vẽ đa giác trong bản vẽ bằng Aspose.Drawing cho .NET.

Đây là cách bạn có thể vẽ một đa giác trong bản vẽ bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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");
Vẽ đa giác

Vẽ một hình chữ nhật trong Bản vẽ bằng C#

Cuối cùng nhưng không kém phần quan trọng, vẽ một hình chữ nhật. Sau đây là các bước để vẽ một hình chữ nhật.

Mẫu mã C# sau đây vẽ một hình chữ nhật trong bản vẽ.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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");
Vẽ hình chữ nhật

Sự kết luận

Trong bài viết này, chúng ta đã thấy các đối tượng đồ họa khác nhau có thể được vẽ như thế nào trong một bản vẽ bằng cách lập trình bằng C#. Hướng dẫn từng bước và các mẫu mã trình bày cách vẽ các đường thẳng, hình chữ nhật, đa giác, hình cung, đường trục bezier, đường trục chính, đường cong và hình elip trong bản vẽ. Bạn có thể tìm hiểu thêm về .NET Graphics API của chúng tôi bằng cách sử dụng tài liệu.

Xem thêm