InkPicture.Renderer プロパティ
インクを描画するために使用される Renderer オブジェクトを取得または設定します。
名前空間 : Microsoft.Ink
アセンブリ : Microsoft.Ink (Microsoft.Ink.dll 内)
構文
'宣言
<BrowsableAttribute(False)> _
Public Property Renderer As Renderer
'使用
Dim instance As InkPicture
Dim value As Renderer
value = instance.Renderer
instance.Renderer = value
[BrowsableAttribute(false)]
public Renderer Renderer { get; set; }
[BrowsableAttribute(false)]
public:
property Renderer^ Renderer {
Renderer^ get ();
void set (Renderer^ value);
}
/** @property */
/** @attribute BrowsableAttribute(false) */
public Renderer get_Renderer()
/** @property */
/** @attribute BrowsableAttribute(false) */
public void set_Renderer(Renderer value)
public function get Renderer () : Renderer
public function set Renderer (value : Renderer)
プロパティ値
型 : Microsoft.Ink.Renderer
インクを描画するために使用される Renderer オブジェクト。
例
次の例では、代替の Renderer オブジェクトを使用して、InkCollector オブジェクト、InkOverlay オブジェクト、または InkPicture オブジェクトの拡大表示されたビューを提供する方法を示します。
代替の Renderer オブジェクトを使用する前に、目的の拡大変換を提供するためにこれが初期化され、既定のレンダリング動作に戻すために元の Renderer オブジェクトが保存されます。
zoomRenderer = New Renderer()
Dim zoomBy2 As Matrix = New Matrix()
zoomBy2.Scale(2, 2)
zoomRenderer.SetObjectTransform(zoomBy2)
' mInkObject can be InkCollector, InkOverlay, or InkPicture
origRenderer = mInkObject.Renderer
zoomRenderer = new Renderer();
Matrix zoomBy2 = new Matrix();
zoomBy2.Scale(2, 2);
zoomRenderer.SetObjectTransform(zoomBy2);
// mInkObject can be InkCollector, InkOverlay, or InkPicture
origRenderer = mInkObject.Renderer;
CheckBox オブジェクトの CheckChanged イベントへの応答として、適切な Renderer オブジェクトが割り当てられ、インク領域が再描画されます。
If DirectCast(sender, CheckBox).Checked Then
' mInkObject can be InkCollector, InkOverlay, or InkPicture
mInkObject.Renderer = zoomRenderer
Else
mInkObject.Renderer = origRenderer
End If
' refresh to show the transformed ink. In production code
' you should invalidate only the necessary area that is
' affected by the transformation but for simplicity here
' we will invalidate the entire form
Me.Refresh()
if (((CheckBox)sender).Checked)
{
// mInkObject can be InkCollector, InkOverlay, or InkPicture
mInkObject.Renderer = zoomRenderer;
}
else
{
mInkObject.Renderer = origRenderer;
}
// refresh to show the transformed ink. In production code
// you should invalidate only the necessary area that is
// affected by the transformation but for simplicity here
// we will invalidate the entire form
this.Refresh();
次の例では、Renderer オブジェクトを使用して、インク空間座標で表されている四角形を、ピクセル座標で表される四角形に変換する方法を示します。
Private Function InkSpaceToPixelRectangle(ByVal inkRectangle As Rectangle) As Rectangle
' Get points for corners of rectangle
Dim leftTop As Point = inkRectangle.Location
Dim rightBottom As Point = New Point(inkRectangle.Right, inkRectangle.Bottom)
' Convert using a Renderer object
Dim tGraphics As Graphics = CreateGraphics()
Dim tRenderer As Renderer = New Renderer()
tRenderer.InkSpaceToPixel(tGraphics, leftTop)
tRenderer.InkSpaceToPixel(tGraphics, rightBottom)
' Clean up
tGraphics.Dispose()
' Return new rectangle
Return New Rectangle(leftTop, New Size(rightBottom.X - leftTop.X, rightBottom.Y - leftTop.Y))
End Function
private Rectangle InkSpaceToPixelRectangle(Rectangle inkRectangle)
{
// Get points for corners of rectangle
Point leftTop = inkRectangle.Location;
Point rightBottom = new Point(inkRectangle.Right, inkRectangle.Bottom);
// Convert using a Renderer object
Graphics tGraphics = CreateGraphics();
Renderer tRenderer = new Renderer();
tRenderer.InkSpaceToPixel(tGraphics, ref leftTop);
tRenderer.InkSpaceToPixel(tGraphics, ref rightBottom);
// Clean up
tGraphics.Dispose();
// Return new rectangle
return new Rectangle(leftTop, new Size(rightBottom.X - leftTop.X, rightBottom.Y - leftTop.Y));
}
プラットフォーム
Windows Vista
.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
バージョン情報
.NET Framework
サポート対象 : 3.0