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

Красивое оформление   Найти похожие ветки 

 
Cash ©   (2004-02-25 12:25) [0]

DelphiX
У меня есть некая строка, нужно ее показать, но не с помощью TexOut, а при помощи битмэпных щрифтов. Как это сделать, и мжно ли в виде спрайта.


 
Anatoly Podgoretsky ©   (2004-02-25 12:32) [1]

Font and Text Functions из WinApi


 
Cash ©   (2004-02-25 12:38) [2]

А че, в виде спрайта не получится?


 
cyborg ©   (2004-02-25 15:06) [3]

Создай спрайт со шрифтом, например по 32 символа в строке, делается это просто, во Фрипаскале, возможно даже и в Турбопаскале в меню есть показать таблицу символов, делается скриншот экрана и уаля :), шрифт готов, какой размер нужен, такой шрифт окну и поставь.
Выводить примерно так, я тут немного кастрировал, может чего не заработает :)

Procedure ShowText(X,Y : Longint; Text : String; Center : Boolean);
Var
 I,L,CX,CY : Longint;
 B : Byte;
begin
 L:=Length(Text); //Длина строки

 if Center then X:=X-((L*ширина_символа) shr 1);

 For I:=1 to L do
 begin
   B:=Byte(Text[i]);
   CY:=(B shr 5) * высота_символа;
   CX:=(B-((B shr 5) shl 5)) * ширина_символа;

   SetRect(TRect,CX,CY,CX+ширина_символа,CY+высота_символа);

тут выводиш функцией BltFast прямоугольник TRect из поверхности шрифта на экран с координатами X,Y

   Inc(X,ширина символа);
 end;
end;


Можно конечно пооптимизировать немного, но и так сойдёт ;)


 
Thor ©   (2004-02-26 15:26) [4]

специально для DelphiX есть компанент под шрифт битмапный.
вроде есть вместе с UnDelphiX


 
Darthman ©   (2004-02-26 15:28) [5]

У меня собственный модуль под это дело был... могу поискать, если надо.


 
TButton ©   (2004-02-26 20:26) [6]

всю жизнь спрайтами текст выводил, пока мне про WinApiшные функции (для етих целей) не сказали :))))))


 
Cash ©   (2004-03-05 16:01) [7]

cyborg ©   (25.02.04 15:06) [3]: Ok, ясненько.
Я ваще имел ввиду: TText = Class(TImageSprite).
Но потом всеже сделал именно так.
ВСЕМ СПАСИБО.



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

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



Память: 0.46 MB
Время: 0.02 c
1-1087277090
Salik
2004-06-15 09:24
2004.06.27
IncMonth на оборот?


10-1015060362
alvillo
2002-03-02 12:12
2004.06.27
Можно ли бесплатно разместить в Сети CORBA-сервер и где?


11-1076153158
Ал
2004-02-07 14:25
2004.06.27
Не могу загрузить Bitmap из ресурса


3-1086093775
Style
2004-06-01 16:42
2004.06.27
Параметры в ADOQuery


9-1078412723
AlexXn
2004-03-04 18:05
2004.06.27
Перемещение Image




   Наверх