![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
шрифт одинаковой ширины [D7, XP]
dis12345 © (2013-07-18 15:11:00)Подскажите, пожалуйста, надо сделать вроде-бы простейшее действие- в Memo поместить текстовые данные колонками-столбиками, даже если дополняю пробелами до одинаковой ширины слова- все равно разъезжаются колонки, может какой шрифт с фиксированной и одинаковой шириной символов есть, чтоб типа как в старом добром DOSe?
Inovet (2013-07-19 09:51:00) [1]> [8] Dimka Maslov © (19.07.13 09:14)
> Consolas
У меня какая-то зараза и з VS повадилась втихаря устанавливать старую версию этого шрифта без псевдографики, а я им в ФАР пользуюсь. Это когда случайно ткнёшь на файле xsd, и она запускается.
Dimka Maslov (2013-07-19 09:14:00) [2]
> Султан (18.07.13 15:48) [5]
Многие моноширинные шрифты являются служебными и декоративными. Поэтому из всего списка именно Courier (New), Lucida Console и относительно недавно появившийся Consolas даюи приемлемый результат.
Султан (2013-07-18 18:54:00) [3]> Султан (18.07.13 15:48) [5]
> от Palladin {©} (30.01.09 19:00) [7]
Решает "проблему" не выборочно, а глобально
:)
брат Птибурдукова (2013-07-18 16:58:00) [4]*trollface* FixedSys! Совсем как дос.
Султан (2013-07-18 15:48:00) [5]от Palladin {©} (30.01.09 19:00) [7]
Var
f:TFont;
dt:THandle;
i:Integer;
tm:TEXTMETRIC;
Function _FontPitchBitsToStr(Const b:Byte):String;
Begin
If (b and TMPF_FIXED_PITCH)<>TMPF_FIXED_PITCH Then Result:='Fixed,' Else Result:='';
If (b and TMPF_VECTOR)=TMPF_VECTOR Then Result:=Result+'Vector,';
If (b and TMPF_TRUETYPE)=TMPF_TRUETYPE Then Result:=Result+'TrueType,';
If (b and TMPF_DEVICE)=TMPF_DEVICE Then Result:=Result+'Device,';
If Result<>'' Then SetLength(Result,Length(Result)-1);
End;
begin
f:=TFont.Create;
Try
dt:=GetDC(GetDesktopWindow);
Try
For i:=0 to Screen.Fonts.Count-1 Do
Begin
f.Name:=Screen.Fonts[i];
SelectObject(dt,f.Handle);
GetTextMetrics(dt,tm);
Memo1.Lines.Add(Screen.Fonts[i]+' - '+_FontPitchBitsToStr(tm.tmPitchAndFamily));
End;
Finally
ReleaseDC(GetDesktopWindow,dt);
End;
Finally
f.Free;
End;
end;
dis12345 (2013-07-18 15:28:00) [6]Спасибо!!!
dis12345 (2013-07-18 15:28:00) [7]Спасибо!!!
MBo (2013-07-18 15:19:00) [8]Конечно, есть. Например, Courier New (используется в IDE Delphi по умолчанию)
RWolf (2013-07-18 15:19:00) [9]Courier New Cyr
Lucida Console