IInkRenderer::MeasureStroke-Methode (msinkaut.h)
Berechnet das Rechteck im Gerätekontext, das einen Strich enthalten würde, wenn es mit dem InkRenderer-Objekt mit der DrawStroke-Methode gezeichnet würde.
Syntax
HRESULT MeasureStroke(
[in] IInkStrokeDisp *Stroke,
[in, optional] IInkDrawingAttributes *DrawingAttributes,
[out, retval] IInkRectangle **Rectangle
);
Parameter
[in] Stroke
Der zu messende Strich.
[in, optional] DrawingAttributes
Optional. Die Bei der Berechnung des Rechtecks zu verwendenden InkDrawingAttributes , die die Zeichnungsattribute auf dem Strich überschreiben. Der Standardwert ist NULL. Dies bedeutet, dass der Strich mit eigenen Zeichnungsattributen gemessen wird.
[out, retval] Rectangle
Wenn diese Methode zurückgibt, enthält einen Zeiger auf das Rechteck im Gerätekontext, das den Strich enthalten würde, wenn der Strich mit der DrawStroke-Methode des InkRenderer-Objekts gezeichnet würde. Der Strich muss x- und y-Koordinaten enthalten, um das Rechteck zu berechnen. Andernfalls gibt die Methode ein leeres Rechteck zurück.
Rückgabewert
Diese Methode kann einen dieser Werte zurückgeben.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Erfolg. |
|
Das InkRectangle-Objekt ist nicht im System registriert. |
|
IInkStrokeDisp verweist nicht auf ein kompatibles InkDisp-Objekt , oder drawingAttributes ist ein ungültiger Eingabeparameter. |
|
Innerhalb der -Methode ist eine Ausnahme aufgetreten. |
|
Ein Parameter enthielt einen ungültigen Zeiger. |
|
Ungültiges Anzeigehandle. |
|
Unerwarteter Parameter oder Eigenschaftstyp. |
Hinweise
Dies ist nur korrekt, wenn Sie die gleichen Argumente sowohl an MeasureStroke als auch an DrawStroke übergeben.
Da das Begrenzungsfeld von der Stiftbreite beeinflusst wird, wird diese Breite für die Ansichtstransformation von InkRenderer entsprechend skaliert. Dazu wird die Stiftbreite mit der Quadratwurzel der Determinante der Ansichtstransformation multipliziert. Höhe und Breite des Begrenzungsrahmens werden in jeder Richtung um die Hälfte erweitert, und die rechte und die untere Seite werden um eins erhöht.
Angenommen, die Stiftbreite beträgt ursprünglich 53, die Quadratwurzel der Determinante der Ansichtstransformation ist 50 und das Begrenzungsfeld ist (0, 0, 1000, 1000). Die Anpassung der Stiftbreite am Begrenzungsrahmen in jeder Richtung wird als (53 * 50) / 2 berechnet, und die rechte und untere Seite werden um eins erhöht. Dies führt zu einem gerenderten Begrenzungsrahmen von (-1325, -1325, 2326, 2326).
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP Tablet PC Edition [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Nicht unterstützt |
Zielplattform | Windows |
Kopfzeile | msinkaut.h |
Bibliothek | InkObj.dll |