ИМХО, VCL должен проверять сглаживание шрифтов по умолчанию в Системе и применять его по умолчанию во время выполнения. Если нет, то, по крайней мере, следует использовать более разумное сглаживание. В этом случае можно утверждать, что ClearType будет лучшим вариантом по умолчанию, учитывая, что> 50% мониторов в настоящее время являются ЖК-дисплеями (и более 50% машин работают под управлением XP или выше).
Это признанный хак (и, как упоминает Кен Уайт, не лучший подход, если есть альтернативы), но мне нужен был способ исправить это глобально для форм, содержащих буквально сотни сторонних типов компонентов (что делает наследование компонентов нереальным ).
Я изменил качество шрифта по умолчанию в Graphics.pas, TFont.GetHandle следующим образом:
// lfQuality: = DEFAULT_QUALITY;
lfQuality: = 5; // (HACK) CLEARTYPE_QUALITY, форсированный тип