在 C# 中绘制形状

经常需要通过绘制形状来创建不同的图形对象,包括圆形、直线、矩形等。这些形状也可以用于图像的注释。在本文中,您将学习如何在 C# 中以编程方式绘制不同的形状。我们将演示如何绘制直线、椭圆、圆弧和矩形并生成它们的图像。

用于绘制形状的 C# API - 免费下载

要绘制不同类型的形状,我们将使用 Aspose.Imaging for .NET。这是一个了不起的图像编辑 API,提供了广泛的功能来处理图像和创建绘图。您可以 下载 API 或从 NuGet 安装它。

PM> Install-Package Aspose.Imaging

使用 C# 画一条线

下面是在C#中画线的步骤。

下面的代码示例显示了如何在 C# 中绘制一条线。

// 创建 BmpOptions
BmpOptions bmpCreateOptions = new BmpOptions();
bmpCreateOptions.BitsPerPixel = 32;

// 定义 BmpOptions 实例的源属性
bmpCreateOptions.Source = new StreamSource();

// 创建 Image 的实例并通过传递
// bmpCreateOptions 对象
Image image = Image.Create(bmpCreateOptions, 500, 500);

// 创建并初始化 Graphics 类的实例
Graphics graphic = new Graphics(image);

// 用白色清除图像表面
graphic.Clear(Color.White);

// 通过指定具有蓝色的 Pen 对象绘制一条虚线,并且
// 坐标点
graphic.DrawLine(new Pen(Color.Blue, 3), 18, 18, 200, 200);
graphic.DrawLine(new Pen(Color.Blue, 3), 18, 200, 200, 18);

// 通过指定具有 Solid 的 Pen 对象绘制一条连续的线
// 带红色和两点结构的画笔
graphic.DrawLine(new Pen(new SolidBrush(Color.Red), 3),
        new Point(18, 18), new Point(18, 200));

// 通过指定具有 Solid 的 Pen 对象绘制一条连续的线
// 具有白色和两点结构的画笔
graphic.DrawLine(new Pen(new SolidBrush(Color.Orange), 3),
        new Point(200, 18), new Point(18, 18));

// 保存所有更改
image.Save("draw_lines.bmp");

以下是上述代码示例的输出。

在C#中画线

使用 C# 绘制椭圆

下面是在C#中绘制椭圆的步骤。

下面的代码示例显示了如何在 C# 中的图像上绘制椭圆。

// 创建 BmpOptions
BmpOptions bmpCreateOptions = new BmpOptions();
bmpCreateOptions.BitsPerPixel = 32;

// 定义 BmpOptions 实例的源属性
bmpCreateOptions.Source = new StreamSource();

// 创建 Image 的实例并通过传递
// bmpCreateOptions 对象
Image image = Image.Create(bmpCreateOptions, 500, 500);

// 创建并初始化 Graphics 类的实例
Graphics graphic = new Graphics(image);

// 用白色清除图像表面
graphic.Clear(Color.White);

// 通过指定具有红色的 Pen 对象绘制虚线椭圆形状
// 颜色和周围的矩形
graphic.DrawEllipse(new Pen(Color.Red, 3), new Rectangle(60, 40, 70, 120));

// 通过指定 Pen 对象绘制一个连续的椭圆形状
// solid brush with blue 颜色和周围的矩形
graphic.DrawEllipse(new Pen(new SolidBrush(Color.Blue), 3),
        new Rectangle(40, 60, 120, 70));

// 保存所有更改
image.Save("draw_ellipse.bmp");

以下是上述代码示例的输出。

C#画椭圆

使用 C# 绘制圆弧

下面是在C#中绘制圆弧的步骤。

下面的代码示例显示了如何在 C# 中的图像上绘制圆弧。

// 创建 BmpOptions
BmpOptions bmpCreateOptions = new BmpOptions();
bmpCreateOptions.BitsPerPixel = 32;

// 定义 BmpOptions 实例的源属性
bmpCreateOptions.Source = new StreamSource();

// 创建 Image 的实例并通过传递
// bmpCreateOptions 对象
Image image = Image.Create(bmpCreateOptions, 500, 500);

// 创建并初始化 Graphics 类的实例
Graphics graphic = new Graphics(image);

// 用白色清除图像表面
graphic.Clear(Color.White);

// 通过指定具有红黑色的 Pen 对象绘制虚线弧形
// 颜色和坐标、高度、宽度、开始和结束角度
int width = 200;
int height = 300;
int startAngle = 45;
int sweepAngle = 270;

// 绘制圆弧到屏幕
graphic.DrawArc(new Pen(Color.Black, 3), 0, 0, width, height, startAngle, sweepAngle);

// 保存所有更改
image.Save("draw_arc.bmp");

以下是上述代码示例的输出。

C#画圆弧

使用 C# 绘制矩形

下面是在C#中绘制矩形的步骤。

下面的代码示例显示了如何在 C# 中的图像上绘制矩形。

// 创建 BmpOptions
BmpOptions bmpCreateOptions = new BmpOptions();
bmpCreateOptions.BitsPerPixel = 32;

// 定义 BmpOptions 实例的源属性
bmpCreateOptions.Source = new StreamSource();

// 创建 Image 的实例并通过传递
// bmpCreateOptions 对象
Image image = Image.Create(bmpCreateOptions, 500, 500);

// 创建并初始化 Graphics 类的实例
Graphics graphic = new Graphics(image);

// 用白色清除图像表面
graphic.Clear(Color.White);

// 通过指定具有红色的 Pen 对象绘制虚线矩形形状
// 颜色和矩形结构
graphic.DrawRectangle(new Pen(Color.Red, 3),
        new Rectangle(60, 40, 70, 120));

// 通过指定 Pen 对象绘制一个连续的矩形形状
// solid brush with blue 颜色和矩形结构
graphic.DrawRectangle(new Pen(new SolidBrush(Color.Blue), 3),
        new Rectangle(40, 60, 120, 70));

// 保存所有更改
image.Save("draw_reactangle.bmp");

以下是上述代码示例的输出。

C#绘制矩形

C# .NET Image Drawing API - 获取免费许可证

您可以 获得免费的临时许可证 并在不受评估限制的情况下绘制形状。

结论

在本文中,您学习了如何在 C# 中绘制形状。我们已经介绍了如何以编程方式在图像上绘制直线、椭圆、弧和矩形。您可以轻松地将提供的代码示例集成到您的 C# 应用程序中。

阅读更多

您可以使用 文档 探索有关 .NET 图像处理 API 的更多信息。此外,您可以通过我们的 论坛 与我们分享您的疑问。

也可以看看