Da RGBA a RGB (fusione con il colore di sfondo)
Indicate un colore di primo piano semitrasparente (RGBA) e un colore di sfondo per calcolare, tramite fusione alfa, il colore RGB opaco che ne risulta. Utile per creare colori di ripiego negli ambienti che non supportano rgba().
La formula della fusione alfa
La conversione da RGBA a RGB opaco si chiama «fusione alfa» (operatore over): la formula seguente si applica in modo indipendente ai canali R, G e B e il risultato viene infine arrotondato all'intero più vicino.
| Formula | result = foreground × alpha + background × (1 − alpha) |
|---|
Consigli per l'uso
- I modelli HTML per la posta elettronica e i browser datati non sempre supportano `rgba()` e `opacity`: indicare accanto, come ripiego per `background-color`, il valore RGB opaco calcolato qui è la scelta più sicura.
- Sia il colore di primo piano sia quello di sfondo si possono scegliere con il selettore o digitando il codice HEX, così da incollare esattamente la tinta verificata nel vostro strumento di design.
- L'opacità (valore alfa) si regola con un cursore da 0 a 100%. A 0% il colore è del tutto trasparente, cioè coincide con lo sfondo; a 100% è del tutto opaco e coincide con il primo piano.
- I preset bianco e nero per lo sfondo ci sono perché sono i due casi più frequenti nella pratica, corrispondenti ai temi chiaro e scuro. Inserendo un colore vicino a quello reale della pagina si ottiene un colore di ripiego più preciso.
Domande frequenti
A proposito — le origini della fusione alfa
Il concetto di fusione alfa (alpha compositing) viene fatto risalire all'articolo «Compositing Digital Images» pubblicato nel 1984 da Thomas Porter e Tom Duff nell'ambito della computer grafica. Fino ad allora la composizione di primo piano e sfondo trattava di norma la sola informazione cromatica; quell'articolo sistematizzò l'uso di un quarto canale dedicato all'opacità — il canale alfa — accanto ai colori, e da lì l'idea divenne lo standard della grafica digitale e dei programmi di fotoritocco.
Oggi quasi tutte le tecnologie che gestiscono la trasparenza si fondano su questo principio: i formati PNG e SVG, le proprietà CSS `rgba()` e `opacity`, le funzioni a livelli dei programmi di disegno. Il metodo di composizione più elementare, chiamato «operatore over» — sovrapporre il primo piano allo sfondo — è esattamente la formula usata da questo strumento.
Il problema della compatibilità con i vecchi programmi di posta e con i browser datati, però, non è ancora del tutto superato. Le e-mail in HTML soffrono in modo particolare dei limiti dei motori di rendering e spesso non possono usare le trasparenze moderne dei CSS: predisporre un valore di ripiego già convertito in colore opaco resta perciò una tecnica pratica molto diffusa.