Створення реалістичних зображень є складним завданням, оскільки вимагає правильного поєднання кольорів, текстур і товщини ліній. Псевдоніми — це проблема, яка виникає під час створення зображень, пов’язаних із комп’ютерною графікою. Щоб створити реалістичні зображення, нам потрібно виконати згладжування, щоб згладити нерівні лінії. Згладжування — це техніка, яка робить графіку на екрані більш гладкою. Він застосовує алгоритм до країв об’єкта, щоб зробити їх гладкішими та менш нерівними. Залежно від типу мистецтва, з яким ви працюєте, можна застосовувати різні типи техніки згладжування. Псевдонім виникає, коли існує високий контраст між сусідніми пікселями. Це може призвести до нерівних ліній і кривих сходів у місцях зустрічі або перетину ліній. У цій статті йдеться про згладжування в комп’ютерній графіці за допомогою C#. Ми навчимося використовувати згладжування ліній, кривих і тексту в C#.
У цій статті будуть розглянуті такі теми:
- API згладжування комп’ютерної графіки C#
- Згладжування за допомогою ліній і кривих
- Згладжування з текстом
C# Computer Graphics Antialiasing API – Безкоштовне завантаження
Для реалізації згладжування в C# ми будемо використовувати API Aspose.Drawing for .NET. Ця кросплатформна бібліотека двовимірної графіки дозволяє малювати текст, геометрію та зображення програмними засобами. Крім того, ви можете завантажувати, зберігати та маніпулювати підтримуваними форматами файлів.
Завантажте DLL API або встановіть його за допомогою NuGet.
PM> Install-Package Aspose.Drawing
Згладжування ліній і кривих у C#
Ми можемо легко малювати лінії та криві за допомогою згладжування в C#, дотримуючись наведених нижче кроків:
- По-перше, створіть екземпляр класу Bitmap.
- Далі створіть об’єкт класу Graphics за допомогою методу Graphics.FromImage() з об’єктом Bitmap.
- Потім встановіть режим згладжування на AntiAlias.
- Тим часом ініціалізуйте об’єкт класу Pen вказаним кольором і розміром.
- Після цього намалюйте потрібну лінію, криву або інші об’єкти, використовуючи відповідні методи.
- Нарешті, викличте метод Save(), щоб зберегти вихідне зображення за вказаним шляхом зображення.
У наведеному нижче прикладі коду показано, як реалізувати згладжування ліній і кривих у C#.
// Цей приклад коду демонструє, як реалізувати згладжування за допомогою ліній і кривих.
// Створення растрового зображення
Bitmap bitmap = new Bitmap(500, 500, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Ініціалізація об’єкта Graphics
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#, виконавши наведені нижче кроки:
- По-перше, створіть екземпляр класу Bitmap.
- Далі створіть об’єкт класу Graphics за допомогою методу Graphics.FromImage() з об’єктом Bitmap.
- Потім ініціалізуйте об’єкт класу Brush вказаним кольором.
- Тим часом встановіть TextRenderingHint на AntiAlias.
- Після цього напишіть текст за допомогою методу DrawString().
- Нарешті, викличте метод Save(), щоб зберегти вихідне зображення за вказаним шляхом зображення.
У наведеному нижче прикладі коду показано, як реалізувати згладжування тексту в C#.
// Цей приклад коду демонструє, як реалізувати згладжування за допомогою ліній і кривих.
// Створення растрового зображення
Bitmap bitmap = new Bitmap(500, 500, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Ініціалізація об’єкта Graphics
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");
Отримайте безкоштовну тимчасову ліцензію
Ви можете отримати безкоштовну тимчасову ліцензію, щоб спробувати Aspose.Drawing for .NET без оціночних обмежень.
Висновок
У цій статті ми дізналися, як програмно реалізувати техніку згладжування в C#. Крім того, ви можете дізнатися більше про Aspose.Drawing for .NET за допомогою документації та дослідити різні функції, які підтримує API. У разі будь-яких неясностей зв’яжіться з нами на нашому безкоштовному форумі підтримки.