IDWriteFontFace ::TryGetFontTable, méthode (dwrite.h)
Recherche la table de polices OpenType spécifiée si elle existe et retourne un pointeur vers celle-ci. La fonction accède aux données de police sous-jacentes via l’interface IDWriteFontFileStream implémentée par le chargeur de fichiers de police.
Syntaxe
HRESULT TryGetFontTable(
[in] UINT32 openTypeTableTag,
[out] const void **tableData,
[out] UINT32 *tableSize,
[out] void **tableContext,
[out] BOOL *exists
);
Paramètres
[in] openTypeTableTag
Type : UINT32
Balise de quatre caractères d’une table de police OpenType à rechercher. Utilisez la macro DWRITE_MAKE_OPENTYPE_TAG pour la créer en tant qu’UINT32. Contrairement à GDI, il ne prend pas en charge les balises TTCF et null spéciales pour accéder à la police entière.
[out] tableData
Type : const void**
Lorsque cette méthode retourne, contient l’adresse d’un pointeur vers la base de la table en mémoire. Le pointeur est valide uniquement tant que la face de police utilisée pour obtenir la table de polices existe toujours ; (pas d’autre visage de police, même s’il fait référence à la même police physique). Ce paramètre est passé sans être initialisé.
[out] tableSize
Type : UINT32*
Lorsque cette méthode retourne, contient un pointeur vers la taille, en octets, de la table de polices.
[out] tableContext
Type : void**
Lorsque cette méthode retourne, l’adresse d’un pointeur vers le contexte opaque, qui doit être libéré en appelant ReleaseFontTable. Le contexte provient en fait du niveau inférieur IDWriteFontFileStream, qui peut être implémenté par l’application ou DWrite lui-même. Il est possible qu’une table NULLContext soit retournée, en particulier si l’implémentation effectue un mappage direct de la mémoire sur l’ensemble du fichier. Néanmoins, toujours le publier ultérieurement et ne l’utilisez pas comme test de réussite de la fonction. La même table peut être interrogée plusieurs fois, mais comme chaque contexte retourné peut être différent, vous devez libérer chaque contexte séparément.
[out] exists
Type : BOOL*
Lorsque cette méthode retourne, TRUE si la table de polices existe ; sinon, FALSE.
Valeur retournée
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Le contexte de la même balise peut être différent pour chaque appel. Chacun d’eux doit donc être conservé et libéré séparément.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7, Windows Vista avec SP2 et Mise à jour de plateforme pour Windows Vista [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 R2, Windows Server 2008 avec SP2 et Mise à jour de plateforme pour Windows Server 2008 [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | dwrite.h |
Bibliothèque | Dwrite.lib |
DLL | Dwrite.dll |