Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Отобразить в Label текст неустановленным на компе шрифтом [D7, WinXP]


Дмитрий_177 ©   (2006-03-21 17:59:00) 

Вобщем скачал я на компъютер шрифт с расширением *.ttf поместил его в папку Fonts, в папке где лежит моя программа. Вот хотел бы его какнибудь в Label-е отобразить, точнее текст таким шрифтом, не устанавливая его на компъютере. Как так можно сделать?


clickmaker   (2006-03-22 10:30:00) [1]

HKEY_CLASSES_ROOT\ttffile\shell\open\command
(Default) = %SystemRoot%\System32\fontview.exe %1


Дмитрий_177   (2006-03-21 21:47:00) [2]

по даблклику-то в ACDSee и открывается ))))


clickmaker   (2006-03-21 19:29:00) [3]


> сейчас скачал программу для просмотра шрифтов

дык винда сама умеет. По даблклику-то


Дмитрий_177   (2006-03-21 19:12:00) [4]

у меня его ACDSee открывала... и там ничего небыло, просто как пример как им будет написано слово "Font" этим шрифтом, как фотка и все... я сейчас скачал программу для просмотра шрифтов, и там все увидел )))


Дмитрий_177   (2006-03-21 19:10:00) [5]

я разобрался ))) спасибо ))


clickmaker   (2006-03-21 19:09:00) [6]


> Дмитрий_177   (21.03.06 19:00) [9]

ну если ты его просто откроешь даблкликом, то что у тебя в окне инфы о шрифте?


Дмитрий_177   (2006-03-21 19:00:00) [7]

я и так попробовал, всеравно... Label1.Font.Name := 'cristal.ttf';


Дмитрий_177   (2006-03-21 18:59:00) [8]

т.е. так у меня не работает почему-то:

FontPath: String;

procedure TForm1.FormCreate(Sender: TObject);
begin
FontPath := ExtractFilePath(Application.ExeName) + 'Fonts\cristal.ttf';
if AddFontResourceEx(PChar(FontPath), FR_PRIVATE, 0) <> 0 then
 Label1.Font.Name := 'cristal';

Label1.Caption := FormatDateTime('tt', Time);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
RemoveFontResourceEx(PChar(FontPath), FR_PRIVATE, 0);
end;


clickmaker   (2006-03-21 18:58:00) [9]

имя шрифта не всегда = имени файла


Дмитрий_177   (2006-03-21 18:55:00) [10]

не работает почему-то...(((


clickmaker   (2006-03-21 18:53:00) [11]


> случаянно не так Label.Font.Name:='cristal';

если это его имя, то так


Дмитрий_177   (2006-03-21 18:52:00) [12]

делаю я так: поправьте если неправильно что-то... Я там с флажками не очень разобрался, но думаю что FR_PRIVATE нужно а не FR_NOT_ENUM. Вот я "загрузил" шрифт, а как мне его Label.Font.Name присвоить? случаянно не так Label.Font.Name:='cristal';?

FontPath: String;

procedure TForm1.FormCreate(Sender: TObject);
begin
FontPath := ExtractFilePath(Application.ExeName) + 'Fonts\cristal.ttf';
if AddFontResourceEx(PChar(FontPath), FR_PRIVATE, 0) <> 0 then
 begin

 end;

Label1.Caption := FormatDateTime('tt', Time);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
RemoveFontResourceEx(PChar(FontPath), FR_PRIVATE, 0);
end;


Дмитрий_177   (2006-03-21 18:19:00) [13]

я имел ввиду папку Fonts не в папке Windows, а в своей папке Fonts, она находится где exe-файл программы


clickmaker   (2006-03-21 18:16:00) [14]

AddFontResourceEx


TStas   (2006-03-21 18:15:00) [15]

А разве он подобным образом не установился? Может, стоило перезапустить Дельфи, чтобы они шрифт увидели


Наверх

Титульная страница Поиск, карта сайта Написать письмо