Пример текста на изображении:
Дана картинка и надо получить другую картинку.
Надо преобразовать уже имеющееся изображение.
Цвета на изображении только черный и белый.
Как сделать этот текст более выраженным (более жирным)?
Какие фильтры или подходы можно применить для такого?
Надо создать объект шрифта и использовать уже его. Так-же можно поиграться с TextRenderingHint, чтоб подобрать нужный режим сглаживания.
FontFamily fontFamily = new FontFamily("Times New Roman");
Font font = new Font(
fontFamily,
32,
FontStyle.Bold,
GraphicsUnit.Pixel);
SolidBrush solidBrush = new SolidBrush(Color.FromArgb(255, 0, 0, 255));
string string1 = "SingleBitPerPixel";
string string2 = "AntiAlias";
e.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;
e.Graphics.DrawString(string1, font, solidBrush, new PointF(10, 10));
e.Graphics.TextRenderingHint = TextRenderingHint.AntiAlias;
e.Graphics.DrawString(string2, font, solidBrush, new PointF(10, 60));
Для каждой точки, не являющейся фоном, закрашиваем 4 (или 8) соседних точек.
Список точек надо получить заранее, чтобы не зациклиться при закрашивании.
При необходимости повторить это несколько раз.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей