У меня возникла необходимость в ярлыке с большим шрифтом в форме Delphi и заметила, что его кривые все еще слегка зазубрены. Я сравнил это с тем же размером и шрифт в MSWord, который был намного более плавным. После исследования я нашел код что позволило мне сгладить мои шрифты, но это беспорядочно, и мне было интересно, если был лучший способ? Глядя в источник VCL, TFont, похоже, NONANTIALIASED_QUALITY, который довольно расстраивает...
Спасибо Bri
procedure TForm1.SetFontSmoothing(AFont: TFont);
var
tagLOGFONT: TLogFont;
begin
GetObject(
AFont.Handle,
SizeOf(TLogFont),
@tagLOGFONT);
tagLOGFONT.lfQuality := ANTIALIASED_QUALITY;
AFont.Handle := CreateFontIndirect(tagLOGFONT);
end;
procedure TForm1.FormCreate(Sender: TObject);
var
I : integer;
begin
For I :=0 to ComponentCount-1 do
If Components[I] is TLabel then
SetFontSmoothing( TLabel( Components[I] ).Font );
end;