Nello script precedente, abbiamo visto come sia facile utilizzare le DirectInk API nella Universal Windows Platform per implementare dei canvas virtuali con cui scrivere e disegnare tramite touch o mouse.
Un'altra interessante funzionalità dell'InkPresenter è la possibilità di esportare su file la sessione di disegno. Per esportare il contenuto di un canvas su file non ci basta che chiamare il metodo SaveAsync contenuto all'interno della proprietà StrokeContainer dell'InkPresenter.
Il codice per implementare questa funzionalità è riportato in basso:
async void Save() { var file = await ApplicationData.Current.LocalFolder.CreateFileAsync("draw.gif"); using (IRandomAccessStream stream = await file.OpenAsync(FileAccessMode.ReadWrite)) { await myInkSurface.InkPresenter.StrokeContainer.SaveAsync(stream); } }
Questo meccanismo di salvataggio è reso possibile grazie alle funzionalità di serializzazione dell'Ink che il metodo SaveAsync implementa: il file generato conterrà al suo interno i nostri dati di disegno nel formato ISF (Ink Serialized Format).
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Generare velocemente pagine CRUD in Blazor con QuickGrid
Gestire i dati con Azure Cosmos DB Data Explorer
Utilizzare una qualunque lista per i parametri di tipo params in C#
Utilizzare QuickGrid di Blazor con Entity Framework
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Esportare ed analizzare le issue di GitHub con la CLI e GraphQL
Introduzione alle Container Queries
C# 12: Cosa c'è di nuovo e interessante
Usare il colore CSS per migliorare lo stile della pagina
Paginare i risultati con QuickGrid in Blazor
Ottenere un token di accesso per una GitHub App
Creare una libreria CSS universale: Nav menu
I più letti di oggi
- Simulare Azure Cosmos DB in locale con Docker
- Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- .NET Conference Italia 2024 - Milano
- .NET Conference Italia 2023 - Milano e Online