שנה גודל תמונות ב-c#

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

שינוי גודל תמונות ב-C# - התקנת API

כדי לשנות את גודל התמונות. נשתמש ב-Aspose.Imaging עבור .NET. זהו ממשק API רב עוצמה לעיבוד תמונה כדי לתפעל סוגים שונים של תמונות רסטר וויקטור. אתה יכול להוריד את ה-DLL של ה-API או להתקין אותו באמצעות NuGet.

PM> Install-Package Aspose.Imaging

שינוי גודל תמונות רסטר ב-C#

ישנן שתי שיטות לשינוי גודל של תמונות רסטר (PNG, GIF, JPEG וכו’): שינוי גודל פשוט ושינוי גודל באמצעות סוג שינוי גודל. בשינוי גודל פשוט, התמונות משתנות על ידי מתן הגובה והרוחב. ואילו השיטה השנייה משתמשת בטכניקות שונות לשינוי גודל. הסעיפים הבאים מדגימים כיצד לשנות את גודל התמונה באמצעות כל אחת מהשיטות שהוזכרו לעיל.

שינוי גודל תמונה פשוט ב-C#

להלן השלבים לשינוי גודל תמונה ב-C#.

  • ראשית, טען את קובץ התמונה באמצעות המחלקה Image.
  • לאחר מכן, שנה את גודל התמונה על ידי קריאה לשיטת Image.Resize(Int32, Int32).
  • לבסוף, שמור תמונה ששונתה בגודלה באמצעות שיטת Image.Save(string).

דוגמת הקוד הבאה מראה כיצד לשנות את גודל התמונה ביישומי NET.

// טען תמונה
using (Image image = Image.Load("aspose-logo.jpg"))
{
    // שנה את גודל התמונה ושמור את התמונה ששונתה
    image.Resize(300, 300);
    image.Save("SimpleResizing_out.jpg");
}

C# שינוי גודל תמונה עם סוג שינוי גודל

הרשימה ResizeType משמשת לציון טכניקות שינוי גודל בהן תוכל להשתמש בהתאם לדרישות שלך. הרשימה המלאה של סוגי שינוי גודל נתמכים זמינה כאן. להלן השלבים לשינוי גודל תמונה באמצעות טכניקת שינוי גודל מסוימת.

דגימת הקוד הבאה משנה את גודל התמונה באמצעות טכניקת שינוי גודל מסוימת.

// טען תמונה
using (Image image = Image.Load("aspose-logo.jpg"))
{
    // שנה את גודל התמונה ושמור את התמונה ששונתה
    image.Resize(300, 300, ResizeType.LanczosResample);
    image.Save("SimpleResizing_out.jpg");
}

שינוי גודל תמונה פרופורציונלי ב-C#

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

במקרה שאתה רוצה להשתמש בכל סוג של שינוי גודל מסוים תוך שינוי גודל תמונות באופן פרופורציונלי, השתמש בשיטות עומס יתר Image.ResizeWidthProportionally(Int32, ResizeType) ו-Image.ResizeHeightProportionally(Int32, ResizeType).

דוגמת הקוד הבאה מראה כיצד לשנות את גודל התמונה באופן פרופורציונלי באמצעות C#.

// טען תמונה
using (Image image = Image.Load("aspose-logo.png"))
{
    // שמור נתוני תמונה במטמון
    if (!image.IsCached)
    {
        image.CacheData();
    }
    
    // ציין רוחב וגובה
    int newWidth = image.Width / 2;
    image.ResizeWidthProportionally(newWidth);
    int newHeight = image.Height / 2;
    image.ResizeHeightProportionally(newHeight);
    
    // שמור תמונה
    image.Save("ResizeImageProportionally_out.png");
}

שינוי גודל של תמונות וקטוריות ב-C#

Aspose.Imaging עבור .NET מאפשר לך גם לשנות את גודל התמונות הווקטוריות ולשמור אותן בפורמט תמונת רסטר. דוגמת הקוד הבאה מראה כיצד לשנות את גודל תמונת SVG ולשמור את הפלט בפורמט PNG.

// טען תמונה
using (Image image = Image.Load("image.svg"))
 {
    // שנה את גודל התמונה כ-PNG
    image.Resize(image.Width * 10,image.Height * 15);
    image.Save("Logotype_10_15.png", new PngOptions()
    {
        VectorRasterizationOptions = new SvgRasterizationOptions()
    });
 }

C# שנה גודל תמונות עם רישיון חינם

אתה יכול לקבל רישיון זמני בחינם כדי לשנות את גודל התמונות ללא מגבלות הערכה.

סיכום

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

ראה גם