掌握ImageSharp:圖像處理的藝術 — 從加載到添加文本,一步步領略圖像處理的奇妙世界
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
ImageSharp:.NET平臺上的靈活高性能圖像處理庫 ImageSharp 是一個強大的圖像處理庫,專為.NET平臺設計。無論是簡單的圖像加載和保存,還是復雜的圖像處理、濾鏡應用和文本添加,ImageSharp 提供了豐富而靈活的功能,使圖像處理變得簡單而愉快。 主要特性:
使用場景:
1. 加載和保存圖像使用 ImageSharp 加載和保存圖像非常簡單,以下是一個基本示例: using SixLabors.ImageSharp; class Program { static void Main() { // 加載圖像 using (var image = Image.Load("input.jpg")) { // 這里可以添加各種圖像處理操作 // 保存圖像 image.Save("output.jpg"); } } } 在這個例子中,我們使用 2. 圖像處理 - 調整大小、裁剪、濾鏡下面是一個演示如何調整圖像大小、裁剪和應用濾鏡的實例: using SixLabors.ImageSharp; using SixLabors.ImageSharp.Processing; using SixLabors.ImageSharp.PixelFormats; class Program { static void Main() { // 加載圖像 using (var image = Image.Load<Rgba32>("input.jpg")) { // 調整大小 image.Mutate(x => x .Resize(new ResizeOptions { Size = new Size(300, 300), Mode = ResizeMode.Max })); // 裁剪 image.Mutate(x => x .Crop(new Rectangle(50, 50, 200, 200))); // 應用濾鏡 - 灰度和反轉顏色 image.Mutate(x => x .Grayscale() // 轉為灰度 .InvertColors()); // 反轉顏色 // 保存處理后的圖像 image.Save("output_processed.jpg"); } } } 在這個示例中,我們使用 3. 縮略圖生成下面是一個示例,演示如何生成縮略圖: using SixLabors.ImageSharp; using SixLabors.ImageSharp.Processing; using SixLabors.ImageSharp.PixelFormats; class Program { static void Main() { // 加載圖像 using (var image = Image.Load<Rgba32>("input.jpg")) { // 生成縮略圖 var thumbnail = image.Clone(x => x .Resize(new ResizeOptions { Size = new Size(100, 100), Mode = ResizeMode.Crop })); // 保存生成的縮略圖 thumbnail.Save("thumbnail.jpg"); } } } 在這個示例中,我們使用 4. 添加文本下面是一個演示如何在圖像上添加文本的實例: using SixLabors.ImageSharp; using SixLabors.ImageSharp.Processing; using SixLabors.ImageSharp.PixelFormats; using SixLabors.Fonts; using System.Numerics; class Program { static void Main() { // 加載圖像 using (var image = Image.Load<Rgba32>("input.jpg")) { // 在圖像上添加文本 var font = SystemFonts.createFont("Arial", 16); var textOptions = new TextGraphicsOptions { HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center }; image.Mutate(x => x .DrawText(textOptions, "Hello, ImageSharp!", font, Rgba32.White, new PointF(image.Width / 2, image.Height / 2))); // 保存帶有文本的圖像 image.Save("output_with_text.jpg"); } } } 在這個示例中,我們使用 這些示例展示了 ImageSharp 的一些基礎功能和高級功能。你可以根據實際需求,結合文檔和其他資源,進一步深入使用 ImageSharp。 該文章在 2023/12/3 22:54:46 編輯過 |
關鍵字查詢
相關文章
正在查詢... |