Fonction ScriptGetFontAlternateGlyphs (usp10.h)
Récupère une liste de glyphes de remplacement pour un caractère spécifié qui est accessible via une fonctionnalité OpenType spécifiée.
Syntaxe
HRESULT ScriptGetFontAlternateGlyphs(
[in, optional] HDC hdc,
[in, out] SCRIPT_CACHE *psc,
[in, optional] SCRIPT_ANALYSIS *psa,
[in] OPENTYPE_TAG tagScript,
[in] OPENTYPE_TAG tagLangSys,
[in] OPENTYPE_TAG tagFeature,
[in] WORD wGlyphId,
[in] int cMaxAlternates,
[out] WORD *pAlternateGlyphs,
[out] int *pcAlternates
);
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 définissant 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 le tableau de glyphes alternatifs puisse être créé avec l’étendue appropriée.
L’application peut également définir ce paramètre sur NULL pour recevoir des résultats non filtrés.
[in] tagScript
Structure OPENTYPE_TAG définissant la balise de script associée à d’autres glyphes.
[in] tagLangSys
Structure OPENTYPE_TAG définissant la balise de langue associée à d’autres glyphes.
[in] tagFeature
Structure OPENTYPE_TAG définissant la balise de fonctionnalité associée à d’autres glyphes.
[in] wGlyphId
Identificateur du glyphe d’origine mappé à partir de la table de mappage de caractères.
[in] cMaxAlternates
Longueur du tableau spécifié par pAlternateGlyphes.
[out] pAlternateGlyphs
Pointeur vers la mémoire tampon dans laquelle cette fonction récupère un tableau d’identificateurs de glyphes. Le tableau inclut le glyphe d’origine, suivi d’autres glyphes. Le premier élément est toujours le glyphe d’origine. Les autres formulaires sont identifiés par un index dans le tableau. L’index est une valeur supérieure à un et inférieure à la valeur de pcAlternates.
Lorsque l’utilisateur choisit un autre formulaire à partir de l’interface utilisateur, le glyphe de remplacement est appliqué au caractère correspondant et le rendu est reformaté.
[out] pcAlternates
Pointeur vers le nombre d’éléments dans le tableau spécifié par pAlternateGlyphes.
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 glyphes de remplacement dépasse la valeur de cMaxAlternates, la fonction échoue avec E_OUTOFMEMORY. L’application peut réessayer d’appeler avec des mémoires tampons plus volumineuses.
Remarques
Lorsque vous utilisez d’autres glyphes, l’application remodele d’abord le glyphe d’origine sans appliquer de balise de fonctionnalité, puis sélectionne un autre glyphe. Le glyphe d’origine est établi comme glyphe de base. Si une autre alternative est requise, le glyphe d’origine fournit des informations qui correspondent à la liste d’alternatives correspondante.
Si un autre glyphe est utilisé comme glyphe de base, aucune liste de sortie correspondante n’est trouvée. L’interface utilisateur utilise le formulaire final sélectionné sans fournir la possibilité de choisir un autre autre formulaire.
Les opérations de ScriptGetFontAlternateGlyphs peuvent être émulées par ScriptSubstituteSingleGlyph. L’application doit essayer les paramètres un par un tandis que les glyphes sont remplacés.
Pour la mise en forme des polices avec Uniscribe, ScriptShapeOpenType est préféré à l’ancienne fonction ScriptShape .
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 |