Comment puis-je tester si une police est installée? En fin de compte, je veux mettre en œuvre une sélection de police de type HTML, c'est-à-dire en spécifiant par ex. "Verdana, Arial", il devrait choisir la première police qui est installée.Test si une police est installée (Win32)
This Question fournit une réponse pour .NET - il semble que la méthode recommandée est de créer la police, puis cmpare la police utilisée.
Est-ce le moyen le plus efficace?
Savez-vous quel est le point du paramètre DC pour EnumFonts et al.? Ce n'est pas nécessaire dans CreateFont. Passer le DC de la fenêtre de bureau semble fonctionner, mais je ne peux pas trouver de documentation (excepté le "handle au contexte de périphérique") dans MSDN – peterchen
Je suppose que cela pourrait être pour quand utiliser une imprimante DC mais j'ai seulement utilisé GetDC (NULL) et n'ont jamais essayé autre chose. – Steven
Le contrôleur de domaine limitera les polices énumérées à celles disponibles sur le périphérique. De nos jours, ce n'est pas vraiment une restriction. Vous n'avez pas besoin d'un contrôleur de domaine lorsque vous appelez CreateFont, car CreateFont crée simplement une version interne d'un LOGFONT et vous donne un handle à celui-ci. Ce n'est que lorsque vous sélectionnez ce handle dans un DC que la police sera choisie et instanciée. –