ImageSharp
مكتبة مفتوحة المصدر C # .NET للرسومات ثنائية الأبعاد
قراءة وكتابة وتعديل وتغيير حجم وتحويل صور PNG و JPEG و GIF و TIFF باستخدام .NET API.
ImageSharp هي مكتبة مفتوحة المصدر بسيطة ولكنها قوية جدًا لمعالجة ملفات الصور داخل تطبيقات C #. إنها واجهة برمجة تطبيقات رسومات ثنائية الأبعاد مُدارة بالكامل ومتعددة المنصات مصممة للسماح بمعالجة الصور. ImageSharp هي مكتبة معالجة صور مفتوحة المصدر تم إصدارها بهدف توفير بديل لـ System.Drawing APIs.
واجهة برمجة التطبيقات هذه شاملة وتدعم الخوارزميات المتقدمة لمعالجة الصور. يتم تحسين واجهة برمجة التطبيقات (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 أيضًا بتطبيق أنواع مختلفة من التأثيرات على الصور داخل الشكل فقط.
تطبيق التأثير على الصور
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");
}
}
}
}