Compartir a través de


Ink.AddStrokesAtRectangle (Método)

Actualización: noviembre 2007

Especifica la colección Strokes conocida que se va a insertar en este objeto Ink en un rectángulo especificado.

Espacio de nombres:  Microsoft.Ink
Ensamblado:  Microsoft.Ink (en Microsoft.Ink.dll)

Sintaxis

'Declaración
Public Sub AddStrokesAtRectangle ( _
    strokes As Strokes, _
    destinationRectangle As Rectangle _
)
'Uso
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
)

Parámetros

  • destinationRectangle
    Tipo: System.Drawing.Rectangle
    Rectángulo donde se agregan los trazos, en coordenadas de espacio de entrada manuscrita.

Comentarios

Se produce un error en tiempo de ejecución si las coordenadas del rectángulo son {0,0,0,0}.

La colección Strokes de origen se anexa al objeto Ink.

Cuando se insertan, los trazos se ajustan desde el cuadro de límite de la colección Strokes hasta el rectángulo.

Este método se puede usar para copiar trazos dentro de un objeto Ink único. Los trazos de origen no necesitan venir de otro objeto Ink.

Ejemplos

En este ejemplo de C# se usa el método AddStrokesAtRectangle para tomar una copia de la entrada manuscrita desde un objeto InkCollector principal, panelMain, hasta un objeto InkCollector, panelThumb, manteniendo la escala y la relación de aspecto apropiadas. Para mantener el panel en miniatura actual, se agrega un controlador de eventos Stroke, panelMain_Stroke, a 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();
}

En este ejemplo de Microsoft Visual Basic.NET se usa el método AddStrokesAtRectangle para tomar una copia de la entrada manuscrita desde un objeto InkCollector principal, panelMain, hasta un objeto InkCollector, panelThumb, manteniendo la escala y la relación de aspecto apropiadas. Para mantener el panel en miniatura actual, se agrega un controlador de eventos Stroke, panelMain_Stroke, a 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

Plataformas

Windows Vista

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Información de versión

.NET Framework

Compatible con: 3.0

Vea también

Referencia

Ink (Clase)

Ink (Miembros)

Microsoft.Ink (Espacio de nombres)

Strokes