Convertitore da BMP a Base64

Codifica file bitmap di Windows (.bmp) in Base64. Poiché i BMP di solito non sono compressi, puoi convertirli prima in PNG, JPEG o WebP per ottenere un risultato molto più corto.

Funziona interamente nel tuo browser. Non viene caricato nulla.

Come si usa

  1. Trascina un file .bmp nell’area di rilascio, fai clic per sceglierne uno oppure incolla un’immagine.
  2. Scegli PNG in Converti in per un risultato lossless e molto più piccolo, oppure lascia Mantieni originale se il sistema di destinazione richiede un BMP.
  3. Confronta la dimensione originale con quella codificata per vedere il risparmio.
  4. Copia o scarica il risultato come data URI, Base64 puro, tag img, regola CSS o immagine Markdown.

Che cos’è un file BMP?

BMP è il formato bitmap indipendente dal dispositivo di Windows. Memorizza i pixel riga per riga, quasi sempre senza compressione (esiste una semplice modalità run-length per le immagini a 4 e 8 bit). Il tipo MIME è image/bmp, anche se alcuni sistemi indicano image/x-ms-bmp, e l’output Base64 inizia con Qk, cioè le lettere BM codificate.

Senza compressione, la dimensione dipende direttamente dalle dimensioni in pixel. Un’immagine a 24 bit di 800 per 600 pixel richiede circa 1,4 MB e il suo Base64 sfiora 1,9 MB di testo.

Converti in PNG prima della codifica

Anche PNG è lossless, quindi una tipica bitmap a 24 bit convertita in PNG conserva esattamente i suoi pixel mentre il file si riduce, spesso di diverse volte e molto di più nel caso di screenshot e grafica a tinte piatte. Per le foto salvate come BMP, JPEG o WebP con una buona qualità danno una stringa ancora più corta. La dimensione originale e quella codificata, mostrate per ogni immagine, rendono evidente la differenza.

Quando mantenere il BMP originale

Alcuni destinatari si aspettano una vera bitmap: vecchi software Windows, stampanti di etichette e scontrini, piccoli display pilotati da microcontrollori o fixture di test che devono corrispondere a un file byte per byte. In questi casi non attivare la conversione: l’output Base64 sarà una copia esatta del file. Tutti i principali browser possono visualizzare immagini data:image/bmp, ma per pagine web ed email PNG è il formato migliore.

La stessa conversione in uno script, con Python e Pillow:

from PIL import Image
import base64, io

buf = io.BytesIO()
Image.open('scan.bmp').save(buf, 'PNG')
uri = 'data:image/png;base64,' + base64.b64encode(buf.getvalue()).decode()

Domande frequenti

Perché la stringa Base64 del mio BMP è così lunga?

BMP memorizza ogni pixel senza compressione e Base64 aggiunge un ulteriore terzo. Convertire prima in PNG di solito accorcia drasticamente la stringa senza perdere alcun dettaglio.

La conversione da BMP a PNG riduce la qualità?

No. PNG è un formato lossless, quindi i pixel restano gli stessi. Cambia solo il modo in cui vengono memorizzati.

I browser possono visualizzare un URI data:image/bmp?

Sì, Chrome, Edge, Firefox e Safari visualizzano tutti i BMP. I client di posta e molte piattaforme online li gestiscono in modo meno affidabile, quindi lì PNG è la scelta più sicura.

BMP supporta la trasparenza?

Un BMP a 32 bit può memorizzare un canale alfa, ma programmi e browser lo trattano in modo incoerente. Se ti serve la trasparenza, converti in PNG o WebP.