Przeszukiwałem to forum i nie odnalazłem ani jednego funkcjonalnego przykładu umieszczenia czcionki *.TTF w zasobach RC pliku wykonywalnego naszej aplikacji.
Na podstawie danych z netu wygenerowałem poprawnie plik *.RES zawierający czcionkę ZX-Spectrum.TTF jednak
nie potrafię przypisać jej danych do kontrolek Form'y
Odnalazłem przykład jednak po kompilacji brak efektu...!!!!?
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
const
// Nazwy zastosowane w pliu "fonty.res" FONT_ZX_Spectrum RCDATA "Fonty\ZX-Spectrum.ttf"
FONT_RES1_NAME = 'FONT_ZX_Spectrum';
FONT_NR1_NAME = 'ZX-Spectrum.ttf';
var
Form1: TForm1;
implementation
{$R *.dfm}
{$R Zasoby_RC\fonty.res}
procedure TForm1.FormCreate(Sender: TObject);
var
Res : TResourceStream;
begin
Res := TResourceStream.Create(hInstance, Pchar(FONT_RES1_NAME),RT_RCDATA );
Res.SavetoFile(FONT_NR1_NAME);
Res.Free;
AddFontResource(PChar(FONT_NR1_NAME));
SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0);
Font.Name:=FONT_NR1_NAME;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
RemoveFontResource(PChar(FONT_NR1_NAME));
SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0);
end;
end.