在本文中,我们将学习如何使用 SkiaSharp 在 C# 中生成图像。
什么是 SkiaSharp?
SkiaSharp 库是一个适用于 .NET 平台的跨平台 2D 图形 API,它基于 Google 的 Skia Graphics 库,后者是一个用于绘制文本、几何图形和图像的综合库。该库是 Google Chrome、ChromeOS、Android 和 Flutter 等各种 Google 产品中使用的图形引擎。
在本文中,我们将探索使用 SkiaSharp 创建一个空白图像,然后在创建的图像中间绘制一个正方形。
让我们首先在终端上导航到我们的项目目录来导入 NuGet 包:
创建图像
接下来,让我们创建一个ImageService
静态类,在其中定义一些辅助方法,首先创建一个空白图像
public static SKBitmap CreateBlankImage(int width, int height)
{
var bitmap = new SKBitmap(width, height);
using var canvas = new SKCanvas(bitmap);
canvas.Clear(SKColors.White);
return bitmap;
}
这里我们看到了静态方法的定义CreateBlankImage()
,它接受width
和height
作为参数并返回一个bitmap
类型SKBitmap
,它代表 SkiaSharp 中的图像。
我们首先使用SKBitmap
给定的width
和创建一个对象height
。然后,我们SKCanvas
使用初始化一个新对象SKBitmap
。这样,我们将画布链接到位图。该类SKCanvas
表示 SkiaSharp 中的画布或绘图表面。它提供绘制图形、文本和图像的方法。
当我们最初创建位图时,其像素数据由未定义的随机值组成。在使