c# - ImageSharp 在 Core 2.2 中的图像上绘制形状

标签 c# asp.net-core imagesharp

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

最近,我需要在图像上绘制矩形。基于 the documentation ,这就是我必须做的:

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);
            }
        }

但是,我意识到在我的 Mutate 中lambda 方法没有名为 DrawLines 的方法.我可以知道我是否缺少程序集吗?根据文档,它是 using :
using SixLabors.ImageSharp.Processing;
using SixLabors.ImageSharp.PixelFormats;

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

最佳答案

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

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

关于c# - ImageSharp 在 Core 2.2 中的图像上绘制形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56846155/

相关文章:

c# - UDP发送的数据存储在哪里?

c# - AE.Net.Mail message.value 为空

c# - 将控制台应用程序编译为 32 位

docker - 了解docker中的ENTRYPOINT

c# - VS2017调试Razor类库时"#"sign cannot be in csproj/sln pathname

imagesharp - 使用 ImageSharp 加载和保存不透明 8 位 PNG 文件

c# - 在aspnetcore web api中使用图像的EXIF数据旋转/翻转图像

c# - 在通用提供程序中如何查找和编辑 T 的属性? (C#)

asp.net-core - 删除 EF Core 中的相关数据

c# - 获取 '' 缺少 SOI 标记。来自 JpegDecoderr