Delphirus - прграммирование на delphi
   Все о delphi Delphirus - прграммирование на delphi
blocks.gif
Навигация
 

Главная
Статьи
Базы данных
Графика
Защита
Интернет
Система
Тексты
Мультимедиа
Файлы
Формы и окна
Другое
Советы
Базы данных
Графика
Интернет
Мультимедиа
Система
Тексты
Файлы
Файлы
Исходники
Компоненты
Инфо
Поиск по сайту
Обратная связь
Самое популярное
Аккаунт
Карта сайта

 
 
 

Советы по delphi \ Файловая система \ Ресурсы(RES-файлы) \ Включение шрифта как ресурс в EXE

Включение шрифта как ресурс в EXE

Включение шрифта в ваш EXE:

  • Используйте ваш любимый текстовый редактор, создайте *.rc файл, описывающий шрифт:
    MY_FONT ANYOL1 "Bauhs93.ttf" 
    

    Первые два параметра могут быть любыми. Они будут использоваться в программе позже.

     

  • Затем для создания *.res файла используйте компилятор командной строки BRCC32.EXE, поставляемый с Delphi. Если ваш файл на этапе 1 был назван MyFont.rc, командная строка в сеансе DOS должна выглядеть так:
    BRCC32 MyFont
    

    Программа добавит в компилируемый файл созданный ресурс .rc и создаст файл с тем же именем, за исключением расширения, которое будет .res: MyFont.res

     

  • В вашей программе добавьте директиву компилятора, чтобы включить вновь созданный файл:
    {$R MyFont.res} 
    

    Правильным будет разместить его в секции реализации после строчки {$R *.DFM}.

     

  • Добавьте процедуру создания файла из ресурса, делающим шрифт доступным для использования. Пример:
    procedure TForm1.FormCreate(Sender: TObject);
    var
    Res : TResourceStream;
    begin
    Res := TResourceStream.Create(hInstance, 'MY_FONT', Pchar('ANYOL1'));
    Res.SavetoFile('Bauhs93.ttf');
    Res.Free;
    AddFontResource(PChar('Bauhs93.ttf'));
    SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0);
    end;
    
  • Теперь вы можете использовать данный шрифт в своем приложении:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Button1.Font.Name := 'Bauhaus 93';
    end;
    

Предостережения:

Приведенный пример не предусматривает никакой проверки и защиты от возможных ошибок.

Обратите внимание - имя файла НЕ такое же, как имя шрифта. Это допускает, что вы знаете имя шрифта и имя его ttf-файла. Вы можете определить это, дважды щелкнув на файле в окне Проводника.

Я рекомендую устанавливать файл шрифта в папку C:WINDOWSFONTS. Его легче отыскать потом именно там.

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

procedure TForm1.FormDestroy(Sender: TObject);
begin
RemoveFontResource(PChar("Bauhs93.ttf"))
SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0);
end;

Для получения дополнительной справки по функциям AddFontResource и RemoveFontResource загляните в электронную справку по Win32.

Название: Включение шрифта как ресурс в EXE
Дата публикации: 2004-06-14 (2900 Прочтено)

 
 

 

Page generation 0.034 seconds