![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ширина строки [Delphi, Opengl]
Signate © (2005-09-30 11:35:00)Как узнать TextWidth у opengl шрифта?
создавал шрифт так
var
old, hf: HFONT;
begin
hf:=MakeFont(h_DC, FontName, FontSize, Bold, Italic, Underline, Strikeout, 0);
old:=SelectObject(h_DC, hf);
wglUseFontBitmaps(h_DC, 0, 256, FontID);
SelectObject(h_DC, old);
DeleteObject(hf);
делал так,
var
sz : SIZE;
begin
GetTextExtentPoint(h_DC, Str, length(Str), sz);
Result := sz.cx;
то таким образом он будет выдавать ширину только последнего загруженного шрифта... а у меня кроме идентификатора шрифта ничего нету...
Goorus (2005-09-30 18:17:00) [1]В процессе никак, ты же удаляешь шрифт:
DeleteObject(hf);
У тебя остаётся только его OpenGL'ное представление, а оттуда, насколько я знаю, его ширину достать не удастся. Выход один - заранее определить ширину строк (при создании шрифта), или отдельных букв, а потом складывать.
XProger (2005-09-30 13:12:00) [2]GetTextExtentPoint32