Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Вниз

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

 
cult   (2002-10-15 17:29) [0]

Вот и весь вопрос.
Для моих извращений растровые шрифты не годятся, поэтому мне их надо упорно игнорировать. Но как узнать?...

Спасибо.


 
MBo   (2002-10-15 17:34) [1]

EnumFontFamilies
EnumFontFamProc
FontType


 
cult   (2002-10-15 17:40) [2]

спасибо, пошел смотреть


 
cult   (2002-10-15 18:25) [3]

чего-то не пашет вот такой текст :(



procedure TForm1.Button1Click(Sender: TObject);
var
Fonts : TStringList ;
LFont: TLogFont;
DC : HDC ;
begin
Fonts := TStringList.Create ;
Fonts.Sorted := True ;
DC := GetDC(Handle) ;
FillChar(LFont, SizeOf(LFont), 0);
EnumFonts(DC,nil, @TForm1.FontPerform, Pointer(Fonts));
ReleaseDC(Handle, DC) ;
end;

function TForm1.Fontperform(var LogFont: TLogFont; var TextMetric: TTextMetric;
FontType: Integer; Data: Pointer):integer;
begin
Result:=1;
Showmessage(inttostr(textmetric.tmheight));
if (TextMetric.tmPitchAndFamily and TMPF_TRUETYPE) <> 0 then
TStrings(Data).Add(LogFont.lfFaceName);
Memo1.Lines.Assign(Data);
end;



При запуске ругается в самой callback на попытку обращения к TextMetric, т.е. уже ShowMessage не работает. Что тут не так?


 
MBo   (2002-10-15 18:39) [4]

function EnumFntProc(var elf:TEnumLogFont;var ntm:TNewTextmetric;
FontType: dword ;strings:TStrings):integer; stdcall;
var s: string;
begin
if fonttype=TRUETYPE_FONTTYPE then begin
s:="TTF "+elf.elfFullName
end else
s:=elf.elfLogfont.lfFacename;
if (elf.elfLogFont.lfPitchAndFamily and FIXED_PITCH)=FIXED_PITCH
then s:="* Fixed * "+s;
strings.Add(S);
Result:=1;
end;


procedure TForm1.Button1Click(Sender: TObject);
var sl:tstringlist;
i:integer;
begin
sl:=tstringlist.create;
sl.Assign(Screen.Fonts);
for i:=0 to sl.count-1 do
EnumFontfamilies(Canvas.Handle, PChar(sl[i]),@EnumFntProc,
Integer(ListBox1.Items));
sl.free;
end;



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

Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
14-78652
Николай Быков
2002-10-04 16:48
2002.10.24
I hate the third companies components


4-78723
GarryFV
2002-09-11 13:39
2002.10.24
Окна , процесссы, потоки...


8-78532
GOGA44
2002-06-28 00:29
2002.10.24
шар


3-78253
Prooksius
2002-10-02 10:25
2002.10.24
Не работает запрос...


1-78398
bobr12
2002-10-15 12:50
2002.10.24
OLEcontainer+Excel





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский