Ripristinare una sessione di disegno tramite le DirectInk API nella Universal Windows Platform

di , in Windows 10,

Abbiamo visto come sia facile utilizzare le DirectInk API della Universal Windows Platform per implementare dei canvas virtuali con cui scrivere e disegnare tramite touch o mouse.
In un altro script abbiamo visto come sia facile esportare all'interno di una GIF i dati ISF della nostra sessione di disegno, e nello script di questa settimana vediamo quando sia altrettanto semplice ripristinarli.
Sempre grazie ad una funzionalità dell'InkPresenter è la possibilità di caricare da file una sessione di disegno precedentemente salvata, tutto ciò che dobbiamo fare è chiamare il metodo LoadAsync contenuto all'interno della proprietà StrokeContainer dell'InkPresenter.
Il codice per implementare questa funzionalità è riportato in basso:

async Task Load()
{
    var file = await ApplicationData.Current.LocalFolder.GetFileAsync("draw.gif");
    using (IRandomAccessStream stream = await file.OpenAsync(FileAccessMode.ReadWrite))
    {
        await myInkSurface.InkPresenter.StrokeContainer.LoadAsync(stream);
    }
}

Ovviamente, in una situazione di ripristino della superfice di disegno potrebbe tornarci utile azzerare il canvas per consentire un caricamento più pulito di una sessione precedentemente salvata. Per azzerare un canvas è sufficiente invocare il metodo Clear dello StrokeContainer come identicato qui in basso:

private void Clear()
{
    myInkSurface.InkPresenter.StrokeContainer.Clear();
}

Commenti

Visualizza/aggiungi commenti

Ripristinare una sessione di disegno tramite le DirectInk API nella Universal Windows Platform (#123) 1010 1
| Condividi su: Twitter, Facebook, LinkedIn, Google+

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi