1. מוצרים
  2.   תמונה
  3.   .NET
  4.   ImageSharp  

ImageSharp  

 
 

ספריית קוד פתוח C# .NET עבור גרפיקה דו-ממדית

קרא, כתוב, שנה, שנה גודל והמר תמונות PNG, JPEG, GIF ו-TIFF באמצעות .NET API.

ImageSharp היא ספריית קוד פתוח חוצת פלטפורמות פשוטה אך חזקה מאוד לעיבוד קבצי תמונה בתוך יישומי C#. זהו API גרפי דו-ממדי מנוהל במלואו וחוצה פלטפורמות שנועד לאפשר עיבוד של תמונות. ImageSharp היא ספריית עיבוד תמונות בקוד פתוח אשר שוחררה במטרה לספק אלטרנטיבה לממשקי ה-API של System.Drawing.

API זה מקיף ותומך באלגוריתמים מתקדמים לעיבוד תמונה. ה-API משופר משנה לשנה כדי לספק תמיכה לעיבוד תמונה מתקדם יותר. התלות היחידה שלו היא NET עצמו, מה שהופך אותו לנייד במיוחד. ה-API כלל תמיכה בתכונות מתקדמות כמו שינוי גודל תמונה, קידוד ופענוח תמונה, פענוח מטא נתונים של תמונה בלבד, שיבוט תמונה, ציור סימן מים על התמונה, ציור טקסט לאורך נתיב ועוד רבים.

Previous Next

תחילת העבודה עם ImageSharp

מהדורה יציבה זמינה ב-NuGet עבור גרסאות בטא, ודא שמתג Include Prerelease מופעל. מהדורות פיתוח זמינות דרך 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 לצייר טקסט כלשהו בעקבות קווי המתאר של נתיב. מומלץ ליצור אוסף פונטים. ראשית, בואו ניצור את הטקסט כקבוצה של וקטורים המצויירים לאורך הנתיב. לאחר שרטוט הנתיב כדי שנוכל לראות אחרי מה הטקסט אמור לעקוב. ה-API של 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");
            }
        }
    }
}              
 עִברִית