ImageSharp 用于 C# (.NET):完整指南及示例
\n\n1. 什么是 ImageSharp?为什么需要它?
\n\nImageSharp 是一个功能强大、完全托管、跨平台的图像处理库,使用 C# 为 .NET 生态系统编写。它是 SixLabors 库系列的一部分,为开发者提供了一个干净、安全且高性能的 API 来处理图像,无需使用外部原生依赖(如 ImageMagick、SkiaSharp 或 GDI+)。这意味着 ImageSharp 在 Windows、Linux 和 macOS 上都能同样出色地运行,使其成为 Web 应用程序(ASP.NET Core)、微服务、控制台工具和移动应用程序(通过 Xamarin/MAUI)的理想选择。
\n\n为什么需要 ImageSharp?在现代开发中,图像处理无处不在:从为图库创建缩略图、调整用户头像大小,到添加水印、应用滤镜和转换格式。ImageSharp 开箱即用地提供了所有这些功能,并注重性能和安全性。与已过时的 System.Drawing(它绑定在 Windows 上且存在线程问题)不同,ImageSharp 是线程安全的且完全跨平台的。它还得到社区的积极支持,并拥有详细的文档。
该库的关键功能包括:加载和保存流行格式的图像(JPEG、PNG、BMP、GIF、WebP、TIFF)、调整大小、裁剪、旋转、翻转、叠加文本和形状、应用颜色矩阵、滤镜(模糊、锐化、怀旧、黑白)、处理 EXIF 数据、GIF 动画等等。ImageSharp 建立在将 Image 作为像素数据容器的概念之上,并通过扩展方法提供灵活的 API。
\n\n2. 安装
\n\n通过 NuGet 包管理器将 ImageSharp 安装到 .NET 项目中。在终端或包管理器控制台中执行以下任一命令:
\n\n// 通过 .NET CLI(推荐)\ndotnet add package SixLabors.ImageSharp\n\n// 通过包管理器控制台\nInstall-Package SixLabors.ImageSharp\n\n// 通过 Visual Studio/Rider 中的 NuGet 包管理器\n// 搜索 "SixLabors.ImageSharp" 并安装最新的稳定版本\n\n安装后,在文件开头添加 using 指令:
图书馆中也有
推荐