
ImageSharp
โอเพ่นซอร์ส C # .NET Library สำหรับกราฟิก 2D
อ่าน เขียน แก้ไข ปรับขนาดและแปลงรูปภาพ PNG, JPEG, GIF และ TIFF โดยใช้ .NET API
ImageSharp เป็นไลบรารีโอเพ่นซอร์สข้ามแพลตฟอร์มที่เรียบง่าย แต่ทรงพลังสำหรับการประมวลผลไฟล์รูปภาพภายในแอปพลิเคชัน C# เป็น API กราฟิก 2 มิติที่มีการจัดการเต็มรูปแบบและข้ามแพลตฟอร์มที่ออกแบบมาเพื่ออนุญาตการประมวลผลภาพ ImageSharp เป็นไลบรารีประมวลผลภาพโอเพนซอร์สที่เปิดตัวโดยมีเป้าหมายเพื่อเป็นทางเลือกแทน System.Drawing APIs
API นี้ครอบคลุมและรองรับอัลกอริธึมขั้นสูงสำหรับการประมวลผลภาพ API ได้รับการปรับปรุงทุกปีเพื่อรองรับการประมวลผลภาพขั้นสูง การพึ่งพาอาศัยกันเพียงอย่างเดียวคือ .NET เอง ซึ่งทำให้พกพาได้สะดวกมาก API ได้รวมการรองรับคุณสมบัติขั้นสูง เช่น การปรับขนาดรูปภาพ การเข้ารหัสและถอดรหัสรูปภาพ การถอดรหัสข้อมูลเมตาของรูปภาพเท่านั้น การโคลนรูปภาพ การวาดลายน้ำบนรูปภาพ การวาดข้อความตามเส้นทาง และอื่นๆ อีกมากมาย
เริ่มต้นใช้งาน ImageSharp
รุ่นเสถียรมีอยู่ใน NuGet สำหรับเวอร์ชันเบต้า ให้ตรวจสอบว่าได้เปิดใช้สวิตช์รวมรุ่นก่อนเผยแพร่แล้ว รุ่นการพัฒนามีให้บริการผ่าน MyGet
ติดตั้ง ImageSharp ผ่าน NuGet
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 # .NET วาดข้อความบางส่วนตามรูปทรงของเส้นทาง ขอแนะนําให้สร้างคอลเลกชันแบบอักษร ขั้นแรกให้สร้างข้อความเป็นชุดของเวกเตอร์ที่วาดไปตามเส้นทาง หลังจากวาดเส้นทางเพื่อให้เราสามารถดูสิ่งที่ข้อความควรจะดังต่อไปนี้ ImageSharp API ยังอนุญาตให้ใช้ชนิดต่าง ๆ ของผลกระทบภาพภายในรูปร่างเท่านั้น
นําไปใช้กับรูปภาพ
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");
            }
        }
    }
}              
