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
Configurare e gestire sidecar container in Azure App Service
Introduzione alle Container Queries
Ordinare randomicamente una lista in C#
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Creare una libreria CSS universale: Clip-path
Come EF 8 ha ottimizzato le query che usano il metodo Contains
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Rendere le variabili read-only in una pipeline di Azure DevOps
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Utilizzare il nuovo modello GPT-4o con Azure OpenAI