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
Gestione degli stili CSS con le regole @layer
Gestire i dati con Azure Cosmos DB Data Explorer
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
Recuperare l'ultima versione di una release di GitHub
Rendere le variabili read-only in una pipeline di Azure DevOps
Potenziare la ricerca su Cosmos DB con Full Text Search
.NET Aspire per applicazioni distribuite
Utilizzare Azure Cosmos DB con i vettori
Creare agenti facilmente con Azure AI Agent Service
Scrivere selettori CSS più semplici ed efficienti con :is()
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core