התאמה ב-C#

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

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

  1. C# Computer Graphics Antialiasing API
  2. השוואה עם קווים ועיקולים
  3. הפניה עם טקסט

C# Computer Graphics Antialiasing API - הורדה חינם

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

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

PM> Install-Package Aspose.Drawing

התאמה עם קווים ועיקולים ב-C#

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

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

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

// דוגמת קוד זו מדגימה כיצד ליישם התאמה נגדית עם קווים ועיקולים.
// צור מפת סיביות
Bitmap bitmap = new Bitmap(500, 500, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);

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

// הגדר את מצב החלקה
graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
graphics.Clear(Color.White);

// אתחול עט
Pen pen = new Pen(Color.Black, 5);

// צייר אליפסה
graphics.DrawEllipse(pen, 10, 10, 980, 780);

// צייר עקומה
graphics.DrawCurve(pen, new Point[] { new Point(10, 700), new Point(250, 500), new Point(500, 10), new Point(750, 500), new Point(990, 700) });

// צייר קו
graphics.DrawLine(pen, 20, 20, 980, 780);

// שמור את התמונה
bitmap.Save("C:\\Files\\Antialiasing.png");
התאמה עם קווים ועיקולים ב-C#

התאמה עם קווים ועיקולים ב-C#

שילוב עם טקסט ב-C#

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

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

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

// דוגמת קוד זו מדגימה כיצד ליישם התאמה נגדית עם קווים ועיקולים.
// צור מפת סיביות
Bitmap bitmap = new Bitmap(500, 500, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);

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

// הגדר את מצב החלקה
graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
graphics.Clear(Color.White);

// הגדר משפחת גופנים
FontFamily fontFamily = new FontFamily("Arial");

// הגדר גופן
Font font = new Font(fontFamily, 30, FontStyle.Regular, GraphicsUnit.Pixel);

// אתחל מברשת מוצקה
SolidBrush solidBrush = new SolidBrush(Color.FromArgb(255, 0, 0, 255));

// צייר מחרוזת עם רמז לעיבוד טקסט בתור SingleBitPerPixel
graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;
graphics.DrawString("This is Single Bit Per Pixel String!", font, solidBrush, new PointF(10, 10));

// צייר מחרוזת עם רמז לעיבוד טקסט בתור AntiAlias
graphics.TextRenderingHint = TextRenderingHint.AntiAlias;
graphics.DrawString("This is Anti Alias String!", font, solidBrush, new PointF(10, 60));

// שמור את התמונה
bitmap.Save("C:\\Files\\AntialiasingText.png");
שילוב עם טקסט ב-C#

שילוב עם טקסט ב-C#

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

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

סיכום

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

ראה גם