Вниз
Скачать: CL | DM;

Как получить список шрифтов только фиксированной ширины?   Найти похожие ветки 

 
Aleksandr ©   (2002-04-04 10:40) [0]

Уважаемые коллеги!
Надо мне отфильтровать список экранных шрифтов, чтобы остались только те, которые имеют фиксированную ширину (типа Courierа). Только вот не получается... Может, кто знает?


 
Dimka Maslov ©   (2002-04-04 11:41) [1]

procedure CreateFontList(FontList: TStringList);
var
i:integer;
S:String;
Ch:Char;
W:integer;
Flag:Boolean;
B:TBitmap;
begin
with FontList do begin
B:=TBitmap.Create;
B.Width:=32;
B.Height:=32;
B.Canvas.Font.Size:=8;
for i:=0 to Screen.Fonts.Count-1 do begin
S:=Screen.Fonts[i];
B.Canvas.Font.Name:=S;
W:=B.Canvas.TextWidth(#32);
Flag:=True;
for Ch:=#33 to #255 do begin
if (B.Canvas.TextWidth(Ch)<>w) then Flag:=False;
if not Flag then Break;
end;
if Flag then Add(S);
end;
B.Free;
end;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
1-1002
victorbur
2002-06-20 11:42
2002.07.01
По компоненту TEdit


1-1087
vads
2002-06-19 10:35
2002.07.01
Работаю с Excel через OLE.


4-1256
ZZ
2002-05-01 17:53
2002.07.01
Вызов неизвестной заранее функции


3-926
Valdemar
2002-06-08 02:10
2002.07.01
MSSQL и ODBC


14-1183
Yuraz
2002-05-29 09:14
2002.07.01
Кто пользуется почтой hotmail.com




   Наверх