![]() |
Schriftart aus *.ttf verwenden
Man kann ja bei Delphi mit AnyObject.Font dem Objekt eine Schriftart zuweisen. Aber die muss dann bei Windows "installiert" sein. Kann man irgendwie auch ein *.ttf angeben aus der Delphi die Schriftart nimmt? Oder eine ttf in das Project einbinden. Irgendwas, damit das programm egal was für Fonts auf dem Rechner sind immer gleich aussieht???
|
Leider geht das nicht, da musst Du den Umweg über die Schriftinstallation gehen. Zumindest bin ich mir keiner anderen Möglichkeit bewusst.
|
Wie macht mann das dann? Einfach die ttf mitliefern und in den Fonts-Ordner kopieren/verschieben?
|
Das wäre eine Möglichkeit. Aber du kannst eine Schriftart auch als Ressource speichern und dann laden. Den Beitrag dazu habe ich nicht gefunden, aber such mal bei
![]() Chris |
|
//Textdatei mit folgendem Inhalt anlegen
MY_FONT SMILLY "SMILLY.ttf" //Datei MyFont.rc speichern diese Datei mit folgendem Befehl kompilieren BRCC32 MyFont.rc Der Sourcecode der jetzt folgt ist ja OK, aber das was ich davor machen soll kapier ich nicht!!!
Delphi-Quellcode:
implementation
{$R *.dfm} {$R MyFont.res} //das einfügen procedure TForm1.FormCreate(Sender: TObject); var res : TResourceStream; begin res := TResourceStream.Create(hInstance, 'My_FONT', Pchar('SMILLY')); res.SaveToFile('SMILLY.ttf'); res.Free; AddFontResource(PChar('SMILLY.ttf')); SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0); end; //So wird die Fontdatei aus der Resource aufgerufen procedure TForm1.Button1Click(Sender: TObject); begin Button1.Font.Name := 'SMILLY'; end; |
Moin Nailor,
falls ich Dich richtig verstanden habe: Erstelle eine Datei mit dem Namen MyFont.rc, z.B. mit Notepad. Da hinein kommt die Zeile MY_FONT SMILLY "SMILLY.TTF" MY_FONT ist der Name der Resource die geladen werden soll, SMILLY ist der (selbstdefinierte) Resourcentyp und "SMILLY.TTF" ist der Name der Fontdatei. Wird der Name ohne Pfad angegeben, so muss sich die Datei im gleichen Verzeichnis befinden, wie die .RC Datei. Dateien vom Typ .RC sind, sozusagen, Resourcen Sourcecode Dateien. Du kannst jetzt versuchen, statt {$R MyFont.res} mal {$R MyFont.RC} anzugeben, damit die Resourcen direkt eincompiliert werden (was allerdings nicht immer funktioniert), oder mit Hilfe des Borland Resourcencompilers BRCC32.EXE (zu finden im Delphi\Bin Verzeichnis) aus der RC Datei eine RES Datei erzeugen. Wichtig: BRCC32 ist ein Kommandozeilen Programm. Wird kein Ausgabedateiname angegeben, so bekommt die Compilierte Resourcendatei (RES) den Namen der Sourcedatei (RC). War's das, was Du noch wissen wolltest? |
ja, das wars. ich hatte keine ahnung womit ich versuchen sollte so eine textdatei zu kompilieren. nachher mal testen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz