ImageSharp 在 Core 2.2 中在图像上绘制形状

VT *_*iew 6 c# asp.net-core imagesharp

ImageSharp我正在我的 .Net Core 2.2 项目中使用(ver 1.0.0-beta0006)。我主要用它来调整图像大小(以生成缩略图)并且它工作正常。

最近,我需要在图像上绘制矩形。根据文档,这就是我必须做的:

using (var image = new Image<Rgba32>(800, 800))
        {
            image.Mutate(x => x.DrawLines(
                Rgba32.HotPink,
                10,
                new SixLabors.Primitives.PointF[] {
                    new Vector2(10, 10),
                    new Vector2(550, 50),
                    new Vector2(200, 400)
                }));

            using (var stream = new MemoryStream())
            {
                image.SaveAsBmp(stream);
            }
        }
Run Code Online (Sandbox Code Playgroud)

但是,我意识到在我的Mutatelambda 方法中没有名为 的方法DrawLines。我可以知道我是否错过了集会吗?根据文档,它是using

using SixLabors.ImageSharp.Processing;
using SixLabors.ImageSharp.PixelFormats;
Run Code Online (Sandbox Code Playgroud)

两者都可以在SixLabors.ImageSharp包装中找到。

toc*_*oft 6

安装SixLabors.ImageSharp.Drawing后您应该能够找到缺少的方法/扩展。

Image Sharp 分为 2 个主要库,主要SixLabors.ImageSharp处理核心图像解码/编码和像素推送,然后是SixLabors.ImageSharp.Drawing处理各种绘图子系统、矢量绘图、文本渲染等。