AddFontResourceA-Funktion (wingdi.h)
Die funktion AddFontResource fügt die Schriftartressource aus der angegebenen Datei der Systemschriftarttabelle hinzu. Die Schriftart kann anschließend von jeder Anwendung für die Textausgabe verwendet werden.
Wenn Sie eine Schriftart als privat oder nicht aufzählbar markieren möchten, verwenden Sie die AddFontResourceEx--Funktion.
Syntax
int AddFontResourceA(
[in] LPCSTR unnamedParam1
);
Parameter
[in] unnamedParam1
Ein Zeiger auf eine mit Null beendete Zeichenfolge, die einen gültigen Dateinamen für schriftarten enthält. Dieser Parameter kann eine der folgenden Dateien angeben.
Wenn Sie eine Schriftart hinzufügen möchten, deren Informationen aus mehreren Ressourcendateien stammen, weisen Sie lpszFileName auf eine Zeichenfolge mit den Dateinamen, die durch ein "|" getrennt sind , z. B. abcxxxxx.pfm | abcxxxxx.pfb.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt der Rückgabewert die Anzahl der hinzugefügten Schriftarten an.
Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Es sind keine erweiterten Fehlerinformationen verfügbar.
Bemerkungen
Jede Anwendung, die Schriftarten aus der Systemschriftarttabelle hinzufügt oder entfernt, sollte andere Fenster der Änderung benachrichtigen, indem sie eine WM_FONTCHANGE Nachricht an alle Fenster der obersten Ebene im Betriebssystem senden. Die Anwendung sollte diese Nachricht senden, indem sie die SendMessage--Funktion aufruft und den hwnd-Parameter auf HWND_BROADCAST festlegt.
Wenn eine Anwendung keine Schriftartressource mehr benötigt, die sie geladen hat, indem sie die funktion AddFontResource aufruft, muss sie diese Ressource entfernen, indem sie die RemoveFontResource--Funktion aufruft.
Diese Funktion installiert die Schriftart nur für die aktuelle Sitzung. Wenn das System neu gestartet wird, ist die Schriftart nicht vorhanden. Damit die Schriftart auch nach dem Neustart des Systems installiert wird, muss die Schriftart in der Registrierung aufgeführt werden.
Eine in der Registrierung aufgeführte Schriftart, die an einem anderen Speicherort als dem Ordner %windir%\fonts\ installiert ist, kann nicht geändert, gelöscht oder ersetzt werden, solange sie in einer beliebigen Sitzung geladen wird. Um eine dieser Schriftarten zu ändern, muss sie zuerst entfernt werden, indem RemoveFontResourceaufgerufen wird, aus der Schriftartregistrierung (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts) entfernt und das System neu gestartet wurde. Nach dem Neustart des Systems wird die Schriftart nicht mehr geladen und kann geändert werden.
Anmerkung
Der wingdi.h-Header definiert AddFontResource als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 Professional [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | wingdi.h (enthalten Windows.h) |
Library | Gdi32.lib |
DLL- | Gdi32.dll |
Siehe auch
Schriftart- und Textfunktionen