Progettazione di siti web
a.a. 2021/22

Grafica per il web

Maria Simi
Aprile, 2022

[Siegel, Zeldman, manuale Photoshop, Web design in a nutshell, Learning web design (cap 20, 21)]

Sommario

Tipi di immagini

Immagini vettoriali

Immagini raster (o bitmap)

Dimensioni in pixel

Conversioni di formato

Bitmap: occupazione di memoria

x × y × z dove z è la profondità del colore
Es. 60 × 30 × 8 = 14400 (circa 14 Kbit)
In byte (1 byte = 8 bit): 1800 byte

Video RAM

Codifica del colore

Numero di bit n Numero di colori 2n
1
2
3
4
5
6
7
8
16
24
32
48
2
4
8
16
32
64
128
256 (indicizzato)
high color (circa 65500)
true color (oltre 16 milioni)
true color + canale alfa
...

I formati delle immagini raster per il web

GIF - rappresentazione del colore

JPEG - rappresentazione del colore

PNG

Tipi di monitor

Limitazioni dei monitor

Il cubo di colori di Netscape

Il mito dei colori "web safe"

La compressione di immagini

Compressione nel GIF

Comprimibilità di immagini GIF


Compressione JPEG

Immagini JPEG comprimibili

Compressione JPEG in pratica

Compressione PNG

Strategie per ridurre le immagini

Aliasing

Anti-aliasing

Il problema degli aloni

Le trasparenze variabili del PNG

Immagini a caricamento graduale

JPEG e PNG graduali

Immagini GIF animate

Come crearle

Cinegrafie (cinegraph, cinemagraph)

SVG - Scalable Vector Graphics

Formato SVG

Un file SVG e la sua visualizzazione in un browser

<svg version="1.1" 
	xmlns="http://www.w3.org/2000/svg" 
	xmlns:xlink="http://www.w3.org/1999/xlink"
	width="300px" height="200px">
<linearGradient id="yellowgrad">
	<stop  offset="0" stop-color="#FFF200"/>
	<stop  offset="1" stop-color="#F15A29"/>
</linearGradient>
<rect x="50" y="50" fill="#4F5AA8" stroke="#000000" 
          stroke-width="4"  width="100" height="100"/>
<ellipse cx="100" cy="100" rx="50" ry="25" 
          fill="url(#yellowgrad)" />
<text x="175" y="150" fill="rgb(200,0,0)" 
          font-family="Verdana" font-weight="bold" 
          font-size="50">SVG!</text> 
</svg>

SVG!

Produrre grafica SVG e usarla

SVG tag

<!DOCTYPE html> <html> <body> <h1>My first SVG</h1> <svg width="400" height="400"> <circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow" /> </svg> </body> </html> Esempio da W3schools

Caching e riutilizzo

Rigonfiamento delle immagini

Mappe immagine o "cliccabili"

Mappe lato server e lato client

Creare una mappa “a mano”

Mappe immagine lato client

Strumenti per creare mappe

Quando usare le mappe

Grafica vettoriale: canvas e SVG

Canvas vs SVG

Favicon

Conclusioni

L'immagine è ...Usa ...Perché ...
Sfondi a tinta unita, graficaGIF, PNG a 8-bitGIF e PNG comprimono bene i colori piatti
Fotografie, colori sfumatiJPEGLa compressione JPEG funziona meglio su colori sfumati e produce file più piccoli del GIF
Una combinazione di foto e aree a tinta unitaGIF, PNG a 8-bitColori indicizzati sono migliori per le aree a tinta unita; può esserci del dithering nelle aree fotografiche
Richiede le trasparenzeGIF, PNG a 8-bitGIF e PNG consentono le trasparenze on/off
Richiede le trasparenze variabiliPNG a 32-bitPNG è l'unico che consente trasparenze variabili con il canale alfa
Richiede le animazioniGIFGIF è l'unico che le consente
Scalabilità, grafica interattivaSVGSVG è l'unico formato vettoriale; sono consentite variazioni dei vari parametri delle immagini