Que é un data URI
É unha forma de meter un ficheiro dentro do propio código, en vez de ligalo: data:image/png;base64,iVBORw0….
O navegador leo coma se fose un URL, así que serve en calquera sitio onde iría o enderezo dunha imaxe: o
src dunha <img>, un url() de CSS ou un campo dun JSON.
Cando compensa (e cando non)
Base64 ocupa un 33 % máis ca o ficheiro orixinal e non se pode gardar na caché por separado: se a imaxe está no CSS, descárgase de novo cada vez que cambia o CSS. Compensa para:
- Iconas e adornos pequenos, de menos duns poucos KB, que se usan en todas as páxinas.
- Correos HTML e documentos dun só ficheiro, onde non podes ligar recursos externos.
- Vistas previas diminutas (LQIP) que se amosan mentres carga a imaxe boa.
- Probas e prototipos que teñen que funcionar sen conexión.
Para fotos e para calquera imaxe grande é mellor un ficheiro normal, con loading="lazy" e en WebP ou AVIF.
SVG: mellor sen Base64
Un SVG é texto, así que pode ir no data URI case tal cal, escapando só uns poucos caracteres. Esa versión «URL-encoded» ocupa bastante menos ca en Base64 e segue a ser lexible. Cando convertes un SVG, a ferramenta déixache escoller.
Privacidade
A conversión faise coa API FileReader do navegador: a imaxe non se sobe a ningún servidor. O botón de proba
descarga un placeholder do xerador de ximg.es, como https://ximg.es/64x64/2563eb/fff, e
convérteo igual que se fose teu.