IDWriteTextAnalyzer::GetGlyphs, méthode (dwrite.h)
Analyse la chaîne de texte d’entrée et la mappe à l’ensemble de glyphes et aux données de glyphe associées en fonction de la police et des règles de rendu du système d’écriture.
Syntaxe
HRESULT GetGlyphs(
[in] WCHAR const *textString,
UINT32 textLength,
IDWriteFontFace *fontFace,
BOOL isSideways,
BOOL isRightToLeft,
[in] DWRITE_SCRIPT_ANALYSIS const *scriptAnalysis,
[in, optional] WCHAR const *localeName,
[optional] IDWriteNumberSubstitution *numberSubstitution,
[in, optional] DWRITE_TYPOGRAPHIC_FEATURES const **features,
[in, optional] UINT32 const *featureRangeLengths,
UINT32 featureRanges,
UINT32 maxGlyphCount,
[out] UINT16 *clusterMap,
[out] DWRITE_SHAPING_TEXT_PROPERTIES *textProps,
[out] UINT16 *glyphIndices,
[out] DWRITE_SHAPING_GLYPH_PROPERTIES *glyphProps,
[out] UINT32 *actualGlyphCount
);
Paramètres
[in] textString
Type : const WCHAR*
Tableau de caractères à convertir en glyphes.
textLength
Type : UINT32
Longueur de textString.
fontFace
Type : IDWriteFontFace*
Visage de police qui est la source des glyphes de sortie.
isSideways
Type : BOOL
Indicateur booléen défini sur TRUE si le texte est destiné à être dessiné verticalement.
isRightToLeft
Type : BOOL
Indicateur booléen défini sur TRUE pour le texte de droite à gauche.
[in] scriptAnalysis
Type : const DWRITE_SCRIPT_ANALYSIS*
Pointeur vers un résultat d’analyse de script à partir d’un appel AnalyzeScript .
[in, optional] localeName
Type : const WCHAR*
Paramètres régionaux à utiliser lors de la sélection de glyphes. Par exemple, le même caractère peut être mappé à différents glyphes pour ja-jp et zh-chs. Si cette valeur est NULL, le mappage par défaut basé sur le script est utilisé.
[optional] numberSubstitution
Type : IDWriteNumberSubstitution*
Pointeur vers une substitution de nombre facultative qui sélectionne les glyphes appropriés pour les chiffres et les caractères numériques associés, en fonction des résultats obtenus à partir de AnalyzeNumberSubstitution. La transmission de la valeur NULL indique qu’aucune substitution n’est nécessaire et que les chiffres doivent recevoir des glyphes nominaux.
[in, optional] features
Type : const DWRITE_TYPOGRAPHIC_FEATURES**
Tableau de pointeurs vers les ensembles de caractéristiques typographiques à utiliser dans chaque plage de caractéristiques.
[in, optional] featureRangeLengths
Type : const UINT32*
Longueur de chaque plage de caractéristiques, en caractères.
La somme de toutes les longueurs doit être égale à textLength.
featureRanges
Type : UINT32
Nombre de plages de fonctionnalités.
maxGlyphCount
Type : UINT32
Nombre maximal de glyphes pouvant être retournés.
[out] clusterMap
Type : UINT16*
Lorsque cette méthode retourne, contient le mappage des plages de caractères aux plages de glyphes.
[out] textProps
Type : DWRITE_SHAPING_TEXT_PROPERTIES*
Lorsque cette méthode retourne, contient un pointeur vers un tableau de structures qui contient des propriétés de mise en forme pour chaque caractère.
[out] glyphIndices
Type : UINT16*
Index de glyphe de sortie.
[out] glyphProps
Type : DWRITE_SHAPING_GLYPH_PROPERTIES*
Lorsque cette méthode retourne, contient un pointeur vers un tableau de structures qui contiennent des propriétés de mise en forme pour chaque glyphe de sortie.
[out] actualGlyphCount
Type : UINT32*
Lorsque cette méthode retourne, contient le nombre réel de glyphes retournés si l’appel réussit.
Valeur retournée
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Notes
Notez que le mappage des caractères aux glyphes est, en général, plusieurs-à-plusieurs. L’estimation recommandée pour les mémoires tampons de sortie par glyphe est (3 * textLength / 2 + 16). Cela n’est pas garanti pour être suffisant.
La valeur du paramètre actualGlyphCount n’est valide que si l’appel réussit. Dans le cas où maxGlyphCount n’est pas assez grand, HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) est retourné. L’application doit allouer une mémoire tampon plus importante et réessayer.
Spécifications
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 |