Карта сайтаСсылкиКонтакты

Использование шрифтов TTF без установки

PDF Печать
Статьи

Здесь показывается, как использовать шрифты TTF (True Type Font) в Вашем приложении Delphi без необходимости инсталлировать их в Windows.

  1. В событии OnCreate главной формы Вашего приложения Delphi вызываем функцию API AddFontResource. Функция AddFontResource добавляет ресурс шрифта из указанного файла в системную таблицу шрифтов.
  2. Когда приложение больше не будет нуждаться в ресурсе шрифта, который мы загрузили, вызывая функцию AddFontResource, Вы должны будете удалить этот ресурс, вызвав функцию RemoveFontResource. Сделать это лучше в событии OnDestroy главной формы Вашего приложения.

procedure TForm1.FormCreate(Sender: TObject) ;
 begin
   AddFontResource('C:\FONTS\MyFont.TTF') ;
   SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0) ;
 end;
 
 { Перед закрытием приложения обязательно удалите шрифт:}
 procedure TForm1.FormDestroy(Sender: TObject; var Action: TCloseAction) ;
 begin
   RemoveFontResource('C:\FONTS\MyFont.TTF') ;
   SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0) ;
 end;

 

Комментарии   

 
-1 #1 Алексей 10.07.2014 11:18
не работает
Цитировать
 
 
+1 #2 Сергей 10.07.2014 17:20
Цитирую Алексей:
не работает

Какому элементу назначаете шрифт? Шрифт добавляется в системные шрифты Windows, использовать можно, например, так:

procedure TForm1.FormCrea te(Sender: TObject);
begin
AddFontResource ('C:\fonts\myfo nt.ttf');
SendMessage(HWN D_BROADCAST, WM_FONTCHANGE, 0, 0);
Label1.Font.Nam e:= 'Afisha'; // Имя шрифта
end;

Имя шрифта можно посмотреть в свойствах шрифта.
Цитировать
 

Добавить комментарий


Защитный код
Обновить