Avalonia solo in codiceEnglish

Volumi › Volume 4

Il capitolo che apre il libro, cosi' come e' stampato: come e' fatto il volume, a chi e' rivolto, che cosa serve.

Prima di cominciare

Prefazione

Il volume 3 ha disegnato con quello che Avalonia dà già: il metodo Render e il DrawingContext, con penne, pennelli, geometrie, trasformazioni e testo, fino a un editor vettoriale; poi le animazioni, il tempo e le particelle. Questo libro scende di un livello e va dove il DrawingContext non arriva.

Prima c'è Skia, la libreria che sta sotto Avalonia e che si può usare direttamente: le sue tele e le sue penne, le fusioni e i livelli, il testo con HarfBuzz, gli shader e il loro linguaggio, SkSL, i filtri, il disegno fuori schermo, i documenti PDF. Poi Direct2D, il disegno nativo di Windows, per sapere che cosa offre e che cosa costa, fino allo stesso grafico disegnato in tre modi e misurato. Poi le immagini: caricarle, mostrarle, i formati dei file, i pixel uno per uno, la luminosità, le convoluzioni, i canali, le miniature preparate in un altro thread. Il libro finisce con cinque progetti: un visualizzatore di fotografie, un editor di immagini, un editor grafico, un'animazione di fuochi d'artificio e un editor di diagrammi.

Tutto è ancora C#, senza XAML, e senza librerie a pagamento: Avalonia (la parte gratuita), SkiaSharp e HarfBuzzSharp, che arrivano con Avalonia, e Vortice.Windows per Direct2D, tutte con licenza MIT.

La collana ha dieci volumi:

  1. Il linguaggio C#: tipi, oggetti, generici, eccezioni, file, thread, Task e async.
  2. Interfacce desktop: Avalonia in codice, i controlli, i temi, le architetture e i thread dell'interfaccia.
  3. Grafica 2D: il disegno e le animazioni con Avalonia.
  4. Grafica 2D avanzata: Skia, Direct2D, le immagini, i progetti. Questo libro.
  5. Grafica 3D: il 3D da zero con OpenGL.
  6. Grafica 3D avanzata: Vulkan e Direct3D.
  7. Audio.
  8. Video.
  9. Dispositivi, dati e rete.
  10. Sistema, distribuzione e qualità.

I volumi 3 e 4 erano un libro solo, diviso perché superava le 800 pagine. Ogni capitolo porta il numero del volume: IV.4 è il quarto capitolo di questo libro, §IV.4.2 il secondo paragrafo di quel capitolo. Un rimando con il numero I, II o III, come «(capitolo III.16)», indica il volume 1, 2 o 3.

Che cosa serve dei volumi precedenti

Il libro dà per noto il C# del volume 1, le basi di Avalonia del volume 2 e il disegno del volume 3. Quello che serve del volume 3 è riassunto nel ripasso, subito dopo queste pagine, paragrafo per paragrafo con il rimando al capitolo che lo spiega per intero. In particolare:

ArgomentoDove
classi, interfacce, eventi, generici, eccezionicapitoli I.6–I.10
thread, Task, await, l'annullamentocapitoli I.15–I.18
il progetto Avalonia, la finestra, il ciclo di vita, RAVALcapitoli II.2–II.5
layout, misure, DPI e scaling; risorse e temicapitoli II.10–II.13 e II.20
il thread della finestra, il Dispatcher, i timercapitoli II.37 e II.39
come disegna Avalonia: il thread del disegno, il compositore, le sondecapitolo III.1, ripasso
Render, penne, geometrie, pennelli, trasformazioni, ritaglicapitoli III.2–III.5, ripasso
immagini, testo come grafica, coordinate e zoomcapitoli III.8–III.10, ripasso
l'editor vettoriale, l'esportazione, le misure delle prestazionicapitoli III.14–III.16, ripasso
il passo fisso, i percorsi, le particelle, gli effetticapitoli III.21–III.25, ripasso

Chi ha appena finito il volume 3 può saltare il ripasso e cominciare dal capitolo IV.1, tornando al ripasso solo quando un rimando lo chiede.

Come è fatto il libro

ParteCapitoliChe cosa
Ripasso—il disegno 2D del volume 3 in breve
Prima · Skia in profonditàIV.1–IV.10Skia dentro Avalonia, tele, pennelli, testo, shader, filtri, documenti
Seconda · Direct2D (Windows)IV.11–IV.16il disegno di Windows, il testo di DirectWrite, il confronto con Skia
Terza · Immagini e fotografiaIV.17–IV.25caricare, mostrare, i formati, i pixel, i filtri, le miniature
ProgettiIV.26–IV.30un visualizzatore di foto, un editor di immagini, uno di grafica, un'animazione, un editor di diagrammi
AppendiciA–Cgli inciampi, il riferimento rapido, il glossario

Ogni capitolo comincia con Cosa imparerai e finisce con tre riquadri: Errori comuni, gli sbagli che si fanno davvero, con il rimedio; Da ricordare, il capitolo in poche righe; Esercizi, da fare con l'editor aperto.

I percorsi di lettura

Le regole della casa

Le stesse dei volumi precedenti:

Gli strumenti e il codice degli esempi

Servono l'SDK di .NET 10, un editor per C# (il libro usa Visual Studio Code, capitolo I.2), Avalonia 12.1.4 e RAVAL 2.0.0, come nei volumi 2 e 3. SkiaSharp (3.119) e HarfBuzzSharp arrivano con Avalonia; Vortice.Windows (3.8) si aggiunge nei capitoli di Direct2D.

Il codice si scarica gratuitamente dal sito del libro, https://raval.aratoingegneria.it (capitolo II.2). RAVAL e gli esempi hanno la licenza MIT. Ogni programma degli esempi è stato compilato senza un avviso, e ogni figura è stata disegnata dal programma vero.

Convenzioni tipografiche

Torna al volume 4