使用 C# 绘制图形

在我之前的 文章 中,我向您概述了我们的 .NET 图形 API - Aspose.Drawing for .NET。除此之外,我们还了解了如何使用 C# 从头开始创建图像或在现有图像上绘制图形。在本文中,我们将先一步学习如何通过在 .NET 应用程序(如 ASP.NET Web 应用程序、Windows 应用程序等)中绘制各种图形对象来创建 2D 绘图。

以下是我们将使用 .NET Graphics API 在绘图中绘制的矢量图形。

在我们开始之前,请确保您已经在您的 .NET 应用程序中安装了 Aspose.Drawing for .NET。您可以在 this post 中阅读有关安装方法的信息。

使用 C# 从头开始创建绘图

首先,让我们看看如何创建一个空绘图并将其保存为PNG图像。这些步骤就像馅饼一样简单。

您也可以将绘图保存为其他图像格式。以下代码示例展示了如何使用 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 图形 API 使用以下步骤绘制基本样条曲线。

以下 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# 在绘图中添加闭合曲线

您也可以像绘制其他图形对象一样绘制闭合曲线。以下是执行此操作的步骤。

您可以使用以下 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 在绘图中绘制椭圆的步骤。

以下代码示例展示了如何使用 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# 在绘图中绘制线条

线条是创建图纸的基本对象之一。以下是使用 Aspose 的 Graphics API 在绘图中绘制线条的步骤。

以下代码示例演示如何使用 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# 在图形中绘制路径的步骤。

以下代码示例演示如何使用 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 在图形中绘制多边形的步骤。

这是使用 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# 在绘图中绘制一个矩形

最后但并非最不重要的一点是,绘制一个矩形。以下是绘制矩形的步骤。

以下 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 图形 API 的更多信息。

也可以看看