GdipMeasureCharacterRanges()



Syntaxe

Resultat.i = GdipMeasureCharacterRanges(*graphics, string.p-unicode, length.l, *font, @layoutRect.RectF, *stringFormat, regionCount.l, @regions)

Paramètres
*graphics

[in] Pointeur sur un objet graphics.

string.p-unicode

[in] Chaîne de caractère Unicode à mesurer.

length.l

[in] Spécifie la longueur de la chaîne de caractère. Ce paramètre peut être à -1 si cette chaîne est terminée par un caractère #Null.

*font

[in] Pointeur sur un objet font.

layoutRect.RectF

[in] Coordonnées du rectangle de la zone d'agencement qui contiendra la chaîne de caractère.

*stringFormat

[in] Pointeur sur un objet StringFormat.

regionCount.l

[in] Spécifie le nombre de régions qui sont attendues dans le tableau des régions. Ce nombre devrait être égal au nombre de caractère actuellement dans l'objet StringFormat.

regions

[out] Tableau (tableau PB ou allocation mémoire) qui recevra les objets Region.

Description

Cette fonction permet d'obtenir les régions dont chacune délimite une plage de positions de caractères dans la chaîne spécifiée. Les plages retrouvées sont celles définies par l'objet stringFormat passé en paramètre. La fonction GdipSetStringFormatMeasurableCharacterRanges() est utilisée pour définir les différentes plages associées à l'objet stringFormat.

Les régions retournées par cette fonction dépendent de la résolution; il peut donc y avoir une légère perte de précision dans le cas ou les chaînes sont enregistrées dans un métafichier à une certaine résolution et relues ultérieurement dans une autre résolution.

Le paramètre layoutRect.RectF est le rectangle qui défini la zone d'agencement ou zone de mise en page de la chaîne, c'est-à-dire le cadre dans lequel la chaîne doit être cantonnée.

Les deux exemples sont proches, le premier repeint les lettres en couleurs en utilisant le message PureBasic #PB_Event_Repaint et le deuxième utilise une callback classique Windows.
A chaque événement #PB_Event_Repaint ou #WM_PAINT, les régions sont retrouvées et affichées avec une couleur aléatoire.

Résultat de la fonction

Si la fonction réussit, elle retourne #Ok qui est une constante de l'énumération status.
Si la fonction échoue, elle retourne une des autres valeurs de l'énumération status

PB - OS

PureBasic v4.30 bêta 4 (Windows - x86)
Testé avec Windows Vista édition familiale Premium