Compartir a través de


Almacenar entradas manuscritas

Actualización: noviembre 2007

Los métodos Save proporcionan compatibilidad para almacenar la entrada manuscrita como Formato serializado de tinta (ISF). Los constructores de la clase StrokeCollection proporcionan compatibilidad con la lectura de datos de entrada manuscrita.

Almacenar y recuperar entradas manuscritas

En esta sección se analiza la forma de almacenar y recuperar la entrada manuscrita en la plataforma WPF.

En el ejemplo siguiente se implementa un controlador de evento de clic de botón que muestra al usuario un cuadro de diálogo para guardar archivos y guarda la entrada manuscrita de un elemento InkCanvas en un archivo.

Private Sub buttonSaveAsClick(ByVal sender As Object, ByVal e As RoutedEventArgs) 

    Dim saveFileDialog1 As New SaveFileDialog()
    saveFileDialog1.Filter = "isf files (*.isf)|*.isf"

    If saveFileDialog1.ShowDialog() Then
        Dim fs As New FileStream(saveFileDialog1.FileName, FileMode.Create)
        theInkCanvas.Strokes.Save(fs)
        fs.Close()
    End If

End Sub 'buttonSaveAsClick
private void buttonSaveAsClick(object sender, RoutedEventArgs e)
{
    SaveFileDialog saveFileDialog1 = new SaveFileDialog();
    saveFileDialog1.Filter = "isf files (*.isf)|*.isf";

    if (saveFileDialog1.ShowDialog() == true)
    {
        FileStream fs = new FileStream(saveFileDialog1.FileName,
                                       FileMode.Create);
        theInkCanvas.Strokes.Save(fs);
        fs.Close();
    }
}

En el ejemplo siguiente se implementa un controlador de evento de clic de botón que muestra al usuario un cuadro de diálogo para abrir archivos y lee la entrada manuscrita del archivo en un elemento InkCanvas.

Private Sub buttonLoadClick(ByVal sender As Object, ByVal e As RoutedEventArgs) 

    Dim openFileDialog1 As New OpenFileDialog()
    openFileDialog1.Filter = "isf files (*.isf)|*.isf"

    If openFileDialog1.ShowDialog() Then
        Dim fs As New FileStream(openFileDialog1.FileName, FileMode.Open)
        theInkCanvas.Strokes = New StrokeCollection(fs)
        fs.Close()
    End If

End Sub 'buttonLoadClick
private void buttonLoadClick(object sender, RoutedEventArgs e)
{
    OpenFileDialog openFileDialog1 = new OpenFileDialog();
    openFileDialog1.Filter = "isf files (*.isf)|*.isf";

    if (openFileDialog1.ShowDialog() == true)
    {
        FileStream fs = new FileStream(openFileDialog1.FileName,
                                       FileMode.Open);
        theInkCanvas.Strokes = new StrokeCollection(fs);
        fs.Close();
    }
}

Vea también

Referencia

InkCanvas

Otros recursos

Windows Presentation Foundation