Codifica

Data URI / Immagine Base64

Codifica di un'immagine in Data URI (data:image/…;base64,…) da inserire in CSS/HTML, e decodifica di un Data URI o Base64 grezzo in un file — tutto direttamente nel browser.

L'anteprima dell'immagine apparirà qui.

A Data URI embeds a file's contents (usually an image) directly into HTML or CSS as a Base64 string, instead of linking to a separate file. This removes an extra network request at the cost of a larger document.

How to use it

Common uses

Things to keep in mind

Base64 encoding grows the data by about 33% — for large images, a Data URI is usually a worse choice than a separate file with browser caching.

A Data URI isn't cached separately from the document it's embedded in — it gets re-downloaded along with the page every time.

Articolo su questo strumento: Data URI: quando incorporare immagini direttamente nel codice

Domande frequenti

Quando dovrei usare un Data URI invece di un normale file immagine?

I Data URI sono utili per immagini piccole e usate spesso, come icone o loghi, quando vuoi evitare una richiesta HTTP extra, ad esempio incorporando un'immagine direttamente in CSS o HTML inline.

Ci sono svantaggi nell'usare i Data URI per le immagini?

Sì. Aumentano la dimensione del file (circa il 33% in più rispetto all'immagine originale a causa di Base64), non vengono memorizzati in cache separatamente come un vero URL immagine, e molti browser e client email impongono limiti pratici di dimensione.

Questo strumento carica la mia immagine da qualche parte?

No. L'immagine viene letta e codificata interamente nel tuo browser — non viene mai inviata a un server.

Si può usare un Data URI per SVG senza Base64?

Sì. SVG è testo (XML), quindi invece di Base64 basta il percent-encoding dei caratteri speciali: data:image/svg+xml,%3Csvg...%3E. Questa soluzione è più compatta e resta modificabile direttamente in un file CSS.

Si può inserire un Data URI in un attributo href o in background-image?

Sì, il Data URI funziona ovunque sia previsto un riferimento a una risorsa — in src, href, background-image nel CSS e persino in @import. La sintassi e i limiti di dimensione sono gli stessi validi per il tag img.

Articoli: Codifica

Base64: a cosa serve la codifica e come funziona

Come Base64 trasforma dati binari in testo ASCII e quando serve davvero.

Base32: come si differenzia da Base64 e quando è più comodo

L'alfabeto di Base32, insensibile a maiuscole/minuscole, e i casi in cui è più comodo di Base64.

URL Encode/Decode: il percent-encoding nei link

Come i caratteri speciali negli indirizzi e nei parametri diventano sequenze %XX.

HTML Entities: come mostrare caratteri speciali in sicurezza

Perché i caratteri < > & vanno escapati e come questo evita di rompere il markup.

JWT: struttura del token e cosa significa "decodificare" un JWT

Header, payload e signature di un JWT, e perché decodificare non equivale a verificare la firma.

Unicode Escape: cosa significano le sequenze \uXXXX

Da dove vengono sequenze come \u0041 in JSON e nelle stringhe JS, e cosa significano.

ROT13 e il cifrario di Cesare: semplice sostituzione di caratteri

Perché uno scorrimento di 13 lettere rende ROT13 auto-inverso, e perché si usa ancora oggi.

Punycode: come funzionano i domini internazionalizzati nel DNS

Come un dominio con caratteri non latini diventa una forma ASCII con il prefisso xn--.

Il codice Morse: come il testo diventa punti e linee

Il principio di codifica delle lettere in punti e linee, e dove si usa ancora oggi il Morse.

Gzip + Base64: comprimere dati per trasmetterli come testo

Perché i dati binari compressi vengono anche codificati in Base64 prima di finire in un campo di testo.

XML Entities: escapare i caratteri nei documenti XML

Le cinque entity XML obbligatorie senza le quali il documento si rompe durante il parsing.