Renderer.Measure-Methode (Stroke, DrawingAttributes)
Berechnet das Rectangle im Gerätekontext, das zur Aufnahme des Stroke-Objekts erforderlich ist, das mit der Draw-Methode des Renderer-Objekts durch Verwenden der angegebenen DrawingAttributes gezeichnet werden soll.
Namespace: Microsoft.Ink
Assembly: Microsoft.Ink (in Microsoft.Ink.dll)
Syntax
'Declaration
Public Function Measure ( _
stroke As Stroke, _
da As DrawingAttributes _
) As Rectangle
'Usage
Dim instance As Renderer
Dim stroke As Stroke
Dim da As DrawingAttributes
Dim returnValue As Rectangle
returnValue = instance.Measure(stroke, _
da)
public Rectangle Measure(
Stroke stroke,
DrawingAttributes da
)
public:
Rectangle Measure(
Stroke^ stroke,
DrawingAttributes^ da
)
public Rectangle Measure(
Stroke stroke,
DrawingAttributes da
)
public function Measure(
stroke : Stroke,
da : DrawingAttributes
) : Rectangle
Parameter
- stroke
Typ: Microsoft.Ink.Stroke
Das zu messende Stroke-Objekt.
- da
Typ: Microsoft.Ink.DrawingAttributes
Die DrawingAttributes, die bei der Berechnung des Rechtecks verwendet werden sollen. Diese überschreiben die DrawingAttributes-Eigenschaft des Stroke-Objekts.
Rückgabewert
Typ: System.Drawing.Rectangle
Das Rectangle im Gerätekontext, das zur Aufnahme der Striche erforderlich ist, wenn diese mit der Draw-Methode des Renderer-Objekts gezeichnet wurden. Zur Berechnung des Rechtecks muss der Strich x-Koordinaten und y-Koordinaten enthalten. Andernfalls gibt die Methode ein leeres Rechteck zurück.
Hinweise
Diese Methode ist nur präzise, wenn Sie an die Measure-Methode und die Draw-Methode dieselben Argumente übergeben.
Da sich die Stiftbreite auf das umgebende Rechteck auswirkt, wird diese Breite entsprechend für die Ansichtstransformation des Renderer-Objekts skaliert. Zu diesem Zweck wird die Stiftbreite mit der Quadratwurzel der Determinanten der Ansichtstransformation multipliziert. Die Höhe und Breite des umgebenden Rechtecks werden in jede Richtung um die Hälfte dieses Betrags erweitert, und die rechte und 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 umgebende Rechteck ist (0, 0, 1000, 1000). Die Anpassung der Stiftbreite an das umgebende Rechteck in jede Richtung wird als (53 * 50) / 2 berechnet, und die rechte und untere Seite werden um eins erhöht. Dies führt zu dem gerenderten umgebenden Rechteck (-1325, -1325, 2326, 2326).
Beispiele
In diesem C#-Beispiel wird das umgebende Rechteck für das Stroke-Objekt theStroke abgerufen, wenn sich die Stiftbreite verdoppelt. Das Renderer-Objekt stammt aus dem InkOverlay-Objekt theInkOverlay.
DrawingAttributes drawingAtt = theStroke.DrawingAttributes.Clone();
drawingAtt.Width = drawingAtt.Width * 2;
Rectangle bounds = theInkOverlay.Renderer.Measure(theStroke, drawingAtt);
In diesem Microsoft® Visual Basic® .NET-Beispiel wird das umgebende Rechteck für das Stroke-Objekt theStroke abgerufen, wenn sich die Stiftbreite verdoppelt. Das Renderer-Objekt stammt aus dem InkOverlay-Objekt theInkOverlay.
Dim drawingAtt As DrawingAttributes = theStroke.DrawingAttributes.Clone();
drawingAtt.Width = drawingAtt.Width * 2;
Dim bounds As Rectangle = theInkOverlay.Renderer.Measure(theStroke, drawingAtt);
Plattformen
Windows Vista
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Versionsinformationen
.NET Framework
Unterstützt in: 3.0