GetTextExtentExPointI, fonction (wingdi.h)
La fonction GetTextExtentExPointI récupère le nombre de caractères d’une chaîne spécifiée qui s’adaptera à un espace spécifié et remplit un tableau avec l’étendue du texte pour chacun de ces caractères. (Une étendue de texte correspond à la distance entre le début de l’espace et un caractère qui va tenir dans l’espace.) Ces informations sont utiles pour les calculs d’habillage de mots.
Syntaxe
BOOL GetTextExtentExPointI(
[in] HDC hdc,
[in] LPWORD lpwszString,
[in] int cwchString,
[in] int nMaxExtent,
[out] LPINT lpnFit,
[out] LPINT lpnDx,
[out] LPSIZE lpSize
);
Paramètres
[in] hdc
Handle dans le contexte de l’appareil.
[in] lpwszString
Pointeur vers un tableau d’index de glyphes pour lesquels les étendues doivent être récupérées.
[in] cwchString
Nombre de glyphes dans le tableau pointé vers le paramètre pgiIn .
[in] nMaxExtent
Largeur maximale autorisée, en unités logiques, de la chaîne mise en forme.
[out] lpnFit
Pointeur vers un entier qui reçoit le nombre maximal de caractères qui s’adapteront à l’espace spécifié par le paramètre nMaxExtent . Lorsque le paramètre lpnFit a la valeur NULL, le paramètre nMaxExtent est ignoré.
[out] lpnDx
Pointeur vers un tableau d’entiers qui reçoit des étendues de glyphes partielles. Chaque élément du tableau donne la distance, en unités logiques, entre le début du tableau d’index de glyphes et l’un des glyphes qui correspond à l’espace spécifié par le paramètre nMaxExtent . Bien que ce tableau doit avoir au moins autant d’éléments que les index de glyphe spécifiés par le paramètre cgi , la fonction remplit le tableau avec des étendues uniquement pour autant d’index de glyphes que spécifiés par le paramètre lpnFit . Si lpnFit a la valeur NULL, la fonction ne calcule pas les largeurs de chaîne partielles.
[out] lpSize
Pointeur vers une structure SIZE qui reçoit les dimensions du tableau d’index de glyphes, en unités logiques. Cette valeur ne peut pas être NULL.
Valeur retournée
Si la fonction réussit, la valeur de retour est différente de zéro.
Si la fonction échoue, la valeur de retour est égale à zéro.
Remarques
Si les paramètres lpnFit et alpDx sont NULL, appeler la fonction GetTextExtentExPointI équivaut à appeler la fonction GetTextExtentPointI .
Lorsque cette fonction retourne l’étendue du texte, elle suppose que le texte est horizontal, c’est-à-dire que l’échappement est toujours 0. Cela est vrai pour les mesures horizontales et verticales du texte. Même si vous utilisez une police qui spécifie un échappement différent de zéro, cette fonction n’utilise pas l’angle pendant qu’elle calcule l’étendue du texte. L’application doit la convertir explicitement. Toutefois, lorsque le mode graphique est défini sur GM_ADVANCED et que l’orientation des caractères est à 90 degrés de l’orientation d’impression, les valeurs renvoyées par cette fonction ne suivent pas cette règle. Lorsque l’orientation des caractères et l’orientation d’impression correspondent pour une chaîne donnée, cette fonction retourne les dimensions de la chaîne dans la structure SIZE sous la forme { cx : 116, cy : 18 }. Lorsque l’orientation des caractères et l’orientation d’impression sont séparées de 90 degrés pour la même chaîne, cette fonction retourne les dimensions de la chaîne dans la structure SIZE sous la forme { cx : 18, cy : 116 }.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | wingdi.h (inclure Windows.h) |
Bibliothèque | Gdi32.lib |
DLL | Gdi32.dll |