גזירת תמונה ב-C#

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

הנושאים הבאים יכוסו במאמר זה:

  1. C# Image Clipping API - הורדה חינם
  2. כיצד ליישם גזירת תמונה ב-#C
  3. חלץ אובייקט מתמונה ב-#C
  4. משאבי למידה בחינם

C# Image Clipping API - הורדה חינם

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

אנא הורד את ה-DLL של ה-API או התקן אותו באמצעות NuGet.

PM> Install-Package Aspose.Drawing

#C גזירת תמונה

אנו יכולים ליישם גזירת תמונה באופן תוכנתי על ידי ביצוע השלבים המפורטים להלן:

  1. ראשית, צור מופע של מחלקת Bitmap.
  2. לאחר מכן, צור את אובייקט המחלקה Graphics באמצעות השיטה FromImage().
  3. לאחר מכן, הגדר את נתיב הקליפ באמצעות המחלקה GraphicsPath.
  4. לאחר מכן, הגדר את נתיב הקליפ באמצעות שיטת SetClip().
  5. לבסוף, שמור את תמונת הפלט באמצעות שיטת Save().

דוגמת הקוד הבאה מראה כיצד ליישם גזירת תמונה ב-#C.

// צור מפת סיביות חדשה
var bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);

// אתחול גרפיקה
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;

// הגדר קליפ
Rectangle rectangle = new Rectangle(200, 200, 600, 400);
GraphicsPath clipPath = new GraphicsPath();
clipPath.AddEllipse(rectangle);
graphics.SetClip(clipPath);

// ציין מחרוזת
StringFormat stringFormat = new StringFormat();
stringFormat.Alignment = StringAlignment.Center;
stringFormat.LineAlignment = StringAlignment.Center;
Brush brush = new SolidBrush(Color.Red);
Font arial = new Font("Arial", 20, FontStyle.Regular);
string text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. " +
    "Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. " +
    "Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. " +
    "Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, " +
    "eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. " +
    "Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. " +
    "Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. " +
    "Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. " +
    "Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";

// צייר חוט
graphics.DrawString(text, arial, brush, rectangle, stringFormat);

// להציל
bitmap.להציל("C:\\Files\\Clipping.png");
C# גזירת תמונה

C# גזירת תמונה

חלץ אובייקט מתמונה ב-#C

אנו יכולים לחלץ חלק מסוים של תמונה באמצעות גזירת תמונה על ידי ביצוע השלבים שהוזכרו קודם לכן. עם זאת, אנחנו רק צריכים לטעון תמונה קיימת ולצייר אותה באמצעות שיטת DrawImage() .

דוגמת הקוד הבאה מראה כיצד להשתמש בחילוץ אובייקט מתמונה ב-#C.

// צור מפת סיביות חדשה
var bitmap = new Bitmap(225, 225, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);

// אתחול גרפיקה
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;

// הגדר קליפ
Rectangle rectangle = new Rectangle(0, 0, 225, 225);
GraphicsPath clipPath = new GraphicsPath();
clipPath.AddEllipse(rectangle);
graphics.SetClip(clipPath);

// טען את התמונה
Bitmap image = new Bitmap(@"C:\Files\aspose-logo.png");

// צייר תמונה במיקום שצוין
graphics.DrawImage(image,0,0);

bitmap.Save("C:\\Files\\extract-object.png");
חלץ אובייקט מתמונה ב-C#

חילוץ אובייקט מתמונה ב-C#

קבל רישיון זמני בחינם

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

Aspose.Drawing - משאבי למידה בחינם

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

סיכום

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

ראה גם