Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.27;
Скачать: 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 вся ветка

Текущий архив: 2004.06.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
6-1083690307
Alpupil
2004-05-04 21:05
2004.06.27
Ping


3-1085826831
nitro
2004-05-29 14:33
2004.06.27
Как скопировать все строки из компонента Listbox в Dbgrid ?


1-1086778222
Saracin
2004-06-09 14:50
2004.06.27
Abstract Error!! Что-то явно не так.


3-1085950398
NeVIP.
2004-05-31 00:53
2004.06.27
FAM, PX, TV, VAL, XG0, XG1, YG0, YG1...


11-1075723164
Solik
2004-02-02 14:59
2004.06.27
Максимизация окна