Fonction ScriptGetFontFeatureTags (usp10.h)

Récupère une liste de fonctionnalités typographiques pour le système d’écriture défini pour le traitement OpenType. Les balises de caractéristique typographiques qui composent la liste sont récupérées à partir de la police dans le contexte ou le cache de l’appareil fourni.

Syntaxe

HRESULT ScriptGetFontFeatureTags(
  [in, optional] HDC             hdc,
  [in, out]      SCRIPT_CACHE    *psc,
  [in, optional] SCRIPT_ANALYSIS *psa,
  [in]           OPENTYPE_TAG    tagScript,
  [in]           OPENTYPE_TAG    tagLangSys,
  [in]           int             cMaxTags,
  [out]          OPENTYPE_TAG    *pFeatureTags,
  [out]          int             *pcTags
);

Paramètres

[in, optional] hdc

Gérez le contexte de l’appareil. Pour plus d’informations, consultez Mise en cache.

[in, out] psc

Pointeur vers une structure SCRIPT_CACHE identifiant le cache de script.

[in, optional] psa

Pointeur vers une structure SCRIPT_ANALYSIS obtenue à partir d’un appel précédent à ScriptItemizeOpenType. Ce paramètre identifie le moteur de mise en forme, afin que les balises de fonctionnalité de police pour la police et les scripts appropriés puissent être récupérées.

L’application peut également définir ce paramètre sur NULL pour récupérer des résultats non filtrés.

[in] tagScript

Structure OPENTYPE_TAG définissant la balise de script associée aux balises de fonctionnalité spécifiées.

[in] tagLangSys

Une structure OPENTYPE_TAG définissant la balise de langue associée aux balises de fonctionnalité spécifiées.

[in] cMaxTags

Longueur du tableau spécifié par pFeatureTags.

[out] pFeatureTags

Pointeur vers une mémoire tampon dans laquelle cette fonction récupère un tableau de structures OPENTYPE_TAG définissant les balises de caractéristiques typographiques prises en charge par la police dans le contexte ou le cache de l’appareil pour le système d’écriture défini.

[out] pcTags

Pointeur vers le nombre d’éléments dans le tableau de balises de fonctionnalité.

Valeur retournée

Retourne 0 en cas de réussite. La fonction retourne une valeur HRESULT différente de zéro si elle ne réussit pas. L’application peut tester la valeur de retour avec les macros SUCCEEDED et FAILED .

Si le nombre de balises correspondantes dépasse la valeur de cMaxTags, la fonction échoue avec E_OUTOFMEMORY. L’application peut réessayer d’appeler avec des mémoires tampons plus volumineuses.

Remarques

Bien qu’elle soit officiellement déclarée en tant que type ULONG, une structure OPENTYPE_TAG contient un tableau de 4 octets qui contient quatre valeurs ASCII 8 bits d’espace, A-Z ou a-z. Par exemple, la balise de fonctionnalité pour la fonctionnalité Ligature est « liga ».

Cette fonction masque les fonctionnalités requises pour le script ou le langage, car le moteur de mise en forme contrôle ces fonctionnalités. L’application n’a aucun contrôle sur la gestion du moteur de mise en forme pour les fonctionnalités requises par le langage. Par exemple, ScriptGetFontFeatureTags masque les fonctionnalités de script arabe pour les formulaires initial, médial et final.

Important À compter de Windows 8 : pour conserver la possibilité de s’exécuter sur Windows 7, un module qui utilise Uniscribe doit spécifier Usp10.lib avant gdi32.lib dans sa liste de bibliothèques.
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête usp10.h
Bibliothèque Usp10.lib
DLL Usp10.dll
Composant redistribuable Usp10.dll version 1.600 ou ultérieure sur Windows XP

Voir aussi

Mise en cache

OPENTYPE_TAG

SCRIPT_ANALYSIS

SCRIPT_CACHE

ScriptItemizeOpenType

Uniscribe

Fonctions uniscribe