ImageSharp
用于 2D 图形的开源 C# .NET 库
使用 .NET API 读取、写入、修改、调整大小和转换 PNG、JPEG、GIF 和 TIFF 图像。
ImageSharp 入门
NuGet 上提供了稳定版本。对于 beta 版本,请确保已启用包含预发布开关。开发版本可通过 MyGet 获得。
通过 NuGet 安装 ImageSharp
Install-Package SixLabors.ImageSharp -Version number
用于调整图像大小的 C# API
ImageSharp 库允许 C# .NET 程序员在他们自己的 .NET 应用程序中调整图像大小。调整图像大小需要生成和迭代目标图像的像素和源图像的采样区域以选择要为每个像素实现的颜色的过程。您可以在处理图像时轻松设置算法,例如 Bicubic、Hermite、Box、CatmullRom、Lanczos2 等。除了基本的调整大小操作,ImageSharp 还提供了更多高级功能。
通过C#API重置图像
// Load File
using (Image image = Image.Load("fileformat.jpg"))
{
// Resize file
image.Mutate(x => x
.Resize(image.Width / 2, image.Height / 2)
.greyscale());
// Save
image.Save("fileformat_out.jpg");
}
在图像上绘制水印
通常,人们通过叠加大水印来保护他们的图像,以防止人们未经授权使用图像。 ImageSharp 库支持向 C++ 应用程序中的图像添加水印。首先,您需要一个字体系列,您可以轻松地从系统字体商店中获得一个。在图像上绘制文本并将其变灰,不透明度为 50%。
沿途绘制文本及其对图像的应用
ImageSharp个图书馆允许C#。ET开发者在路径轮廓之后绘制一些文本。 建议创建一个字体集合。 首先、让我们生成文本作为沿着路径绘制的一组矢量。 在绘制路径之后、我们可以看到文本应该遵循什么。 ImageSharpAPI还允许将各种形式的影响应用于形状中。
适用于图像
namespace CustomImageProcessor
{
static class Program
{
static void Main(string[] args)
{
System.IO.Directory.CreateDirectory("output");
using (Image image = Image.Load("fb.jpg"))
{
var outerRadii = Math.Min(image.Width, image.Height) / 2;
var star = new Star(new PointF(image.Width / 2, image.Height / 2), 5, outerRadii / 2, outerRadii);
using (var clone = image.Clone(p =>
{
p.GaussianBlur(15); // apply the effect here you and inside the shape
}))
{
clone.Mutate(x => x.Crop((Rectangle)star.Bounds));
var brush = new ImageBrush(clone);
// cloned image with the effects applied
image.Mutate(c => c.Fill(brush, star));
}
image.Save("output/fb.png");
}
}
}
}