Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Eigene Schriftart benutzen (https://www.delphipraxis.net/145356-eigene-schriftart-benutzen.html)

JBJHJM 30. Dez 2009 11:42


Eigene Schriftart benutzen
 
Angenommen, ich möchte eine Nicht-Windowsstandard-Schrift verwenden, (nur in meiner Anwendung) - muss ich den Font dann zwangsläufig zuerst auf dem PC installieren, oder gibt es auch eine Möglichkeit, die Schrift direkt ins Programm einzubinden?
Danke!
Und Guten Rutsch!

Luckie 30. Dez 2009 11:50

Re: Eigene Schriftart benutzen
 
Du musst die Schriftdatei mitliefern und mit MSDN-Library durchsuchenAddFontResource in Windows registrieren und mit wieder abmelden. Alles weitere erfährst du, wenn du die Forensuche bemühst.

xaromz 30. Dez 2009 11:52

Re: Eigene Schriftart benutzen
 
Hallo,

wenn Du die Schriftart ins Programmverzeichnis speicherst, kannst Du die Schriftart beim Programmstart laden und beim Beenden wieder entladen.
Hier ein kleines beispiel:
Delphi-Quellcode:
procedure AddFontRes(const FileName: WideString);
begin
  AddFontResourceW(PWideChar(FileName));
  SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);
end;

procedure RemoveFontRes(const FileName: WideString);
begin
  if RemoveFontResourceW(PWideChar(FileName)) then
  begin
    SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);
  end;
end;
Gruß
xaromz

Micha88 30. Dez 2009 12:03

Re: Eigene Schriftart benutzen
 
Ich speichere Font-Ressources grundsätzlich beim Programmstart entwder im Anwendungsverzeichnis oder im Temp-Verzeichnis und lösche sie beim Programmende wieder.

Denn es gibt nix schlimmeres als Software, welche einem den Rechner vermüllt.
Mit vermüllen meine ich Einträge anlegen/Daten speichern und später nicht wieder entfernen.

JBJHJM 30. Dez 2009 13:00

Re: Eigene Schriftart benutzen
 
Naja, die Antwort habe ich auf jeden Fall - ich muss den Font - zumindest zeitweilig - registrieren.
Danke!


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz