У меня есть требование для создания растрового изображения, содержащего некоторые символы, отображаемые без сглаживания или ClearType.
В Win32-земле я бы создал шрифт с lfQuality, установленным в NONANTIALIASED_QUALITY, и нарисовал бы с этим.
Я попытался сделать это с WinForms следующим образом:
using(Font smoothFont = new Font("Arial", 30, GraphicsUnit.Pixel))
{
LOGFONT lf = new LOGFONT();
smoothFontToLogFont(lf);
lf.lfQuality = NONANTIALIASED_QUALITY;
using (Font roughFont = Font.FromLogFont(lf))
{
Но похоже, что roughFont по-прежнему отображает текст ClearTyped.
Должен ли я отказаться от WinForms и просто сделать это в C, или я что-то здесь упускаю? (Мой класс LOGFONT и связанные с ним определения lfQuality взяты из исходного кода фреймворка, поэтому я рад, что они верны)