次の方法で共有


Renderer.Measure メソッド (Strokes)

デバイス コンテキストで Rectangle を計算します。このデバイス コンテキストは、Renderer オブジェクトの Draw メソッドで描画される Strokes コレクションを含んでいる必要があります。

名前空間 :  Microsoft.Ink
アセンブリ :  Microsoft.Ink (Microsoft.Ink.dll 内)

構文

'宣言
Public Function Measure ( _
    strokes As Strokes _
) As Rectangle
'使用
Dim instance As Renderer
Dim strokes As Strokes
Dim returnValue As Rectangle

returnValue = instance.Measure(strokes)
public Rectangle Measure(
    Strokes strokes
)
public:
Rectangle Measure(
    Strokes^ strokes
)
public Rectangle Measure(
    Strokes strokes
)
public function Measure(
    strokes : Strokes
) : Rectangle

パラメータ

戻り値

型 : System.Drawing.Rectangle
デバイス コンテキスト上の Rectangle
このデバイス コンテキストは、ストロークが Renderer オブジェクトの Draw メソッドで描画されている場合は、そのストロークを含んでいる必要があります。四角形の計算を行うには、ストロークに x 座標と y 座標が含まれている必要があります。含まれていない場合、メソッドは空の四角形を返します。

解説

このメソッドは、Measure メソッドおよび Draw メソッドの両方に同じ引数を渡す場合にのみ正確です。

境界ボックスはペンの幅の影響を受けるため、Renderer オブジェクトのビュー変換に合わせて、ペンの幅が適切にスケーリングされます。つまり、ペンの幅がビュー変換の行列式の平方根で乗算されてスケーリングされます。境界ボックスの高さと幅は、各方向に対してこの長さの半分ずつ拡大され、右側と下側は 1 ずつ増分されます。

たとえば、ペンの幅が最初は 53 で、ビュー変換の行列式の平方根が 50、境界ボックスが (0, 0, 1000, 1000) であるとします。ペンの幅は (53 * 50) / 2 の計算結果に従って、境界ボックスの各方向に対して調整され、右側と下側は 1 ずつ増分されます。この結果、(-1325, -1325, 2326, 2326) の境界ボックスが描画されます。

この C# の例では、InkCollector オブジェクト theInkCollector 内の Strokes コレクションの外接する四角形を取得します。

Rectangle theMeasure = theInkCollector.Renderer.Measure(theInkCollector.Ink.Strokes);

この Microsoft® Visual Basic® .NET の例では、InkCollector オブジェクト theInkCollector 内の Strokes コレクションの外接する四角形を取得します。

Dim theMeasure As Rectangle = theInkCollector.Renderer.Measure(theInkCollector.Ink.Strokes)

プラットフォーム

Windows Vista

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 3.0

参照

参照

Renderer クラス

Renderer メンバ

Measure オーバーロード

Microsoft.Ink 名前空間

Renderer.Draw

Stroke.GetBoundingBox

Strokes.GetBoundingBox

DrawingAttributes