다음을 통해 공유


Ink.AddStrokesAtRectangle 메서드

업데이트: 2007년 11월

지정된 사각형에 있는 이 Ink 개체에 삽입할 알려진 Strokes 컬렉션을 지정합니다.

네임스페이스:  Microsoft.Ink
어셈블리:  Microsoft.Ink(Microsoft.Ink.dll)

구문

‘선언
Public Sub AddStrokesAtRectangle ( _
    strokes As Strokes, _
    destinationRectangle As Rectangle _
)
‘사용 방법
Dim instance As Ink
Dim strokes As Strokes
Dim destinationRectangle As Rectangle

instance.AddStrokesAtRectangle(strokes, _
    destinationRectangle)
public void AddStrokesAtRectangle(
    Strokes strokes,
    Rectangle destinationRectangle
)
public:
void AddStrokesAtRectangle(
    Strokes^ strokes, 
    Rectangle destinationRectangle
)
public void AddStrokesAtRectangle(
    Strokes strokes,
    Rectangle destinationRectangle
)
public function AddStrokesAtRectangle(
    strokes : Strokes, 
    destinationRectangle : Rectangle
)

매개 변수

  • destinationRectangle
    형식: System.Drawing.Rectangle
    잉크 공간 좌표에서 스트로크가 추가되는 사각형입니다.

설명

사각형의 좌표가 {0,0,0,0}이면 런타임 오류가 throw됩니다.

소스 Strokes 컬렉션은 Ink 개체에 추가됩니다.

삽입된 스트로크는 Strokes 컬렉션의 경계 상자에서 사각형까지 배율이 조정됩니다.

이 메서드를 사용하면 단일 Ink 개체 내에서 스트로크를 복사할 수 있습니다. 소스 스트로크는 다른 Ink 개체에서 가져올 필요가 없습니다.

예제

이 C# 예제에서는 적절한 배율 및 종횡비를 유지하면서 AddStrokesAtRectangle 메서드를 사용하여 주 InkCollector 개체인 panelMain에서 InkCollector 개체인 panelThumb으로 잉크의 복사본을 가져 옵니다. 축소판 패널을 최신 상태로 유지하기 위해 Stroke 이벤트 처리기인 panelMain_Stroke가 panelMain에 추가됩니다.

private void panelMain_Stroke(object sender, Microsoft.Ink.InkCollectorStrokeEventArgs e)
{
    // Create a bounding rectangle for panelThumb in ink space coordinates
    Point thePoint = Point.Empty;
    using (Graphics g = Graphics.FromHwnd(Handle))
    {
        thePoint = new Point(panelThumb.Width, panelThumb.Height);
        panelMain.Renderer.PixelToInkSpace(g, ref thePoint);
    }
    Rectangle theRectangle = new Rectangle(0, 0, thePoint.X, thePoint.Y);   

    // Delete the old strokes in the thumbnail, and add the new strokes.
    panelThumb.Ink.DeleteStrokes();
    // The strokes are automatically scaled to the destination rectangle
    panelThumb.Ink.AddStrokesAtRectangle(panelMain.Ink.Strokes, theRectangle);
    Refresh();
}

이 Microsoft Visual Basic.NET 예제에서는 적절한 배율 및 종횡비를 유지하면서 AddStrokesAtRectangle 메서드를 사용하여 주 InkCollector 개체인 panelMain에서 InkCollector 개체인 panelThumb으로 잉크의 복사본을 가져 옵니다. 축소판 패널을 최신 상태로 유지하기 위해 Stroke 이벤트 처리기인 panelMain_Stroke가 panelMain에 추가됩니다.

 Private Sub panelMain_Stroke(ByVal sender As System.Object, _
    ByVal e As Microsoft.Ink.InkCollectorStrokeEventArgs) Handles panelMain.Stroke

    'Create a bounding rectangle for panelThumb in ink space coordinates
    Dim g As Graphics = Graphics.FromHwnd(Handle)
    Dim thePoint As Point = New Point(panelThumb.Width, panelThumb.Height)
    panelMain.Renderer.PixelToInkSpace(g, thePoint)
    'Dispose of the Graphics object
    g.Dispose()
    Dim theRectangle As Rectangle = New Rectangle(0, 0, thePoint.X, thePoint.Y)

    'Delete the old strokes in the thumbnail, and add the new strokes.
    panelThumb.Ink.DeleteStrokes()
    'The strokes are automatically scaled to the destination rectangle
    panelThumb.Ink.AddStrokesAtRectangle(panelMain.Ink.Strokes, theRectangle)
    Refresh()
End Sub

플랫폼

Windows Vista

.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

3.0에서 지원

참고 항목

참조

Ink 클래스

Ink 멤버

Microsoft.Ink 네임스페이스

Strokes