IInkRenderer ::MeasureStroke, méthode (msinkaut.h)
Calcule le rectangle dans le contexte de l’appareil qui contiendrait un trait s’il était dessiné avec l’objet InkRenderer à l’aide de la méthode DrawStroke .
Syntaxe
HRESULT MeasureStroke(
[in] IInkStrokeDisp *Stroke,
[in, optional] IInkDrawingAttributes *DrawingAttributes,
[out, retval] IInkRectangle **Rectangle
);
Paramètres
[in] Stroke
Trait à mesurer.
[in, optional] DrawingAttributes
facultatif. InkDrawingAttributes à utiliser lors du calcul du rectangle, qui remplace les attributs de dessin sur le trait. La valeur par défaut est NULL, ce qui signifie que le trait est mesuré à l’aide de ses propres attributs de dessin.
[out, retval] Rectangle
Lorsque cette méthode est retournée, contient un pointeur vers le rectangle dans le contexte de l’appareil qui contiendrait le trait si le trait était dessiné avec la méthode DrawStroke de l’objet InkRenderer . Le trait doit contenir des coordonnées x et y pour calculer le rectangle. Sinon, la méthode retourne un rectangle vide.
Valeur retournée
Cette méthode peut retourner l’une de ces valeurs.
Code de retour | Description |
---|---|
|
Réussite. |
|
L’objet InkRectangle n’est pas inscrit sur le système. |
|
IInkStrokeDisp ne pointe pas vers un objet InkDisp compatible, ou drawingAttributes est un paramètre d’entrée non valide. |
|
Une exception s’est produite à l’intérieur de la méthode . |
|
Un paramètre contenait un pointeur non valide. |
|
Handle d’affichage non valide. |
|
Paramètre ou type de propriété inattendu. |
Remarques
Cela est exact uniquement si vous passez les mêmes arguments à MeasureStroke et DrawStroke.
Étant donné que le cadre englobant est affecté par la largeur du stylet, cette largeur est mise à l’échelle de manière appropriée pour la transformation d’affichage d’InkRenderer. Pour ce faire, la largeur du stylet est multipliée par la racine carrée du déterminant de la transformation d’affichage. La hauteur et la largeur du cadre englobant sont augmentées de la moitié de cette quantité dans chaque direction, et les côtés droit et inférieur sont incrémentés d’un.
Par exemple, considérez que la largeur du stylet est initialement de 53, que la racine carrée du déterminant de la transformation d’affichage est 50 et que le cadre englobant est (0, 0, 1000, 1000). L’ajustement de la largeur du stylet au cadre englobant dans chaque direction est calculé comme (53 * 50) / 2, et les côtés droit et inférieur sont incrémentés d’un. Il en résulte un cadre englobant rendu de (-1325, -1325, 2326, 2326).
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP Édition Tablette PC [applications de bureau uniquement] |
Serveur minimal pris en charge | Aucun pris en charge |
Plateforme cible | Windows |
En-tête | msinkaut.h |
Bibliothèque | InkObj.dll |