AddFontResourceA, fonction (wingdi.h)
La fonction AddFontResource ajoute la ressource de police du fichier spécifié à la table de polices système. La police peut ensuite être utilisée pour la sortie de texte par n’importe quelle application.
Pour marquer une police comme privée ou non énumérable, utilisez la fonction AddFontResourceEx .
Syntaxe
int AddFontResourceA(
[in] LPCSTR unnamedParam1
);
Paramètres
[in] unnamedParam1
Pointeur vers une chaîne de caractères terminée par null qui contient un nom de fichier de police valide. Ce paramètre peut spécifier l’un des fichiers suivants.
Pour ajouter une police dont les informations proviennent de plusieurs fichiers de ressources, faites pointer lpszFileName vers une chaîne avec les noms de fichiers séparés par un « | » --par exemple, abcxxxxx.pfm | abcxxxxx.pfb.
Valeur retournée
Si la fonction réussit, la valeur de retour spécifie le nombre de polices ajoutées.
Si la fonction échoue, la valeur de retour est égale à zéro. Aucune information d’erreur étendue n’est disponible.
Remarques
Toute application qui ajoute ou supprime des polices de la table de polices système doit informer les autres fenêtres de la modification en envoyant un message WM_FONTCHANGE à toutes les fenêtres de niveau supérieur du système d’exploitation. L’application doit envoyer ce message en appelant la fonction SendMessage et en définissant le paramètre hwnd sur HWND_BROADCAST.
Lorsqu’une application n’a plus besoin d’une ressource de police qu’elle a chargée en appelant la fonction AddFontResource , elle doit supprimer cette ressource en appelant la fonction RemoveFontResource .
Cette fonction installe la police uniquement pour la session active. Lorsque le système redémarre, la police n’est pas présente. Pour que la police soit installée même après le redémarrage du système, la police doit être répertoriée dans le Registre.
Une police répertoriée dans le Registre et installée à un emplacement autre que le dossier %windir%\fonts\ ne peut pas être modifiée, supprimée ou remplacée tant qu’elle est chargée dans n’importe quelle session. Pour modifier l’une de ces polices, il doit d’abord être supprimé en appelant RemoveFontResource, supprimé du registre de polices (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts) et le système redémarré. Après le redémarrage du système, la police n’est plus chargée et peut être modifiée.
Notes
L’en-tête wingdi.h définit AddFontResource comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Configuration requise
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | wingdi.h (inclure Windows.h) |
Bibliothèque | Gdi32.lib |
DLL | Gdi32.dll |