Immagine in Base64

Converti la tua immagine in una stringa Base64 con il nostro strumento di conversione immagini in Base64 per un'efficace codifica dei dati.

5 di 2 valutazioni
.gif, .png, .jpg, .jpeg, .svg consentito. 64 MB massimo.
Immagine in Base64

Immagine in Base64 è uno strumento gratuito che converte un file immagine in una stringa di testo codificata in Base64.

Che cos'è Base64 e a cosa serve?

Per l'immagine caricata, Base64 applica una codifica da dati binari a testo, consentendo ai dati di attraversare sistemi progettati principalmente per contenuti testuali. Ogni tre byte dei dati originali vengono rappresentati con quattro caratteri stampabili appartenenti a un alfabeto definito.

È utile quando un formato non può contenere un file binario separato. Un'immagine può essere inserita in un URL di dati, in una proprietà JSON o in una parte MIME di un'email senza allegare i byte originali nella consueta forma binaria. La stringa Base64 generata è codificata, non cifrata. Chiunque la ottenga può decodificarla, quindi non offre né riservatezza né controllo degli accessi.

Un esempio molto semplice basato su byte di testo mostra come funziona.

  • Il testo di input è <svg></svg>
  • L'output Base64 è PHN2Zz48L3N2Zz4=

La maggior parte delle immagini contiene byte binari anziché codice leggibile, quindi il relativo input non apparirà come quello dell'esempio testuale. Il principio è lo stesso per PNG, JPEG, GIF, WebP e altri formati di immagine.

Schema: il testo passa attraverso lo strumento Immagine in Base64 in entrambe le direzioni

Come si converte un'immagine in Base64?

Carica l'immagine nello strumento, avvia la conversione e copia il valore restituito nel campo Codificato in Base64. Lo strumento applica ai dati dell'immagine la funzione base64_encode di PHP.

  1. Seleziona l'immagine da rappresentare come testo.
  2. Attendi che la pagina elabori il file e restituisca il valore codificato.
  3. Copia l'intera stringa, compresi gli eventuali segni di uguale finali.
  4. Aggiungi la sintassi necessaria se il sistema di destinazione richiede un URL di dati, un valore JSON o un altro contenitore.
Lo strumento Immagine in Base64 su digily.link, con il suo modulo di inserimento

L'elaborazione avviene sul server. L'immagine viene trasmessa al server tramite HTTPS e non viene archiviata. Poiché l'elaborazione avviene lato server, non dare per scontato che durante la conversione il file rimanga sul tuo dispositivo.

Come si usa la stringa Base64 ottenuta?

Usa la stringa come Base64 puro oppure inseriscila nella sintassi richiesta dal sistema che deve riceverla. Base64, da solo, non identifica il formato dell'immagine, il nome del file, le dimensioni o l'uso previsto.

In un URL di dati HTML o CSS, il valore codificato è normalmente preceduto da un tipo di contenuto e dall'indicatore Base64. Un URL di dati PNG inizia con data:image/png;base64,, seguito immediatamente dalla stringa. Per un JPEG si usa image/jpeg, mentre per un SVG si usa comunemente image/svg+xml. Un tipo di contenuto errato può impedire al software di visualizzare un'immagine altrimenti valida.

In JSON, Base64 viene normalmente salvato come stringa tra virgolette, spesso insieme a un campo separato che specifica il tipo di contenuto. Non aggiungere il prefisso di un URL di dati se un'API richiede espressamente Base64 puro. Prima di usare il valore restituito dallo strumento, consulta la documentazione dell'API, perché i due tipi di input non sono intercambiabili.

Dove viene usato Base64 nei sistemi reali?

Base64 si incontra spesso quando dati binari devono essere trasmessi attraverso un formato o un protocollo basato sul testo. Alcuni casi tipici sono:

  • URL di dati incorporati in HTML, CSS o documenti generati.
  • Payload JSON inviati ad API che accettano il contenuto di un'immagine all'interno di una proprietà testuale.
  • Messaggi email, nei quali MIME può codificare in Base64 allegati e immagini incorporate.
  • Stringhe di query, anche se i caratteri Base64 standard possono richiedere anche la codifica URL.
  • File di configurazione e documenti XML che non possono contenere direttamente byte binari arbitrari.

Anche i nomi di dominio internazionalizzati sono un esempio di conversione dei dati in un insieme limitato di caratteri, ma usano Punycode anziché Base64. Per i valori inseriti in un URL può servire anche un Codificatore URL, perché Base64 standard può contenere segni più, barre e segni di uguale.

Perché la decodifica Base64 non funziona o produce caratteri incomprensibili?

La decodifica può non riuscire perché l'input include un prefisso copiato, è danneggiato o incompleto, oppure non corrisponde al formato Base64 previsto dal decodificatore. La comparsa di caratteri incomprensibili spesso indica che sono stati decodificati correttamente dati binari di un'immagine, poi visualizzati per errore come testo normale.

  • Un prefisso copiato può causare un errore se il decodificatore accetta solo Base64. Prima di usare un decodificatore Base64 puro, rimuovi testo come data:image/png;base64,.
  • Un input danneggiato o incompleto può generare un'immagine parziale che i visualizzatori non riescono ad aprire.
  • La doppia codifica produce un'altra stringa Base64 dopo la prima decodifica. Se all'origine è stato codificato un valore già codificato, può essere necessaria una seconda decodifica.
  • Un alfabeto errato può causare un errore se il decodificatore si aspetta una variante diversa. Base64url usa trattini e trattini bassi al posto dei segni più e delle barre impiegati da Base64 standard.
  • Il padding mancante può creare problemi ai decodificatori più rigidi. Base64 standard può terminare con uno o due segni di uguale, anche se alcuni sistemi li omettono intenzionalmente.

Se il risultato decodificato è binario, salvalo con il tipo di immagine corretto anziché aprirlo in un editor di testo. Il Decodificatore Base64 o lo strumento Base64 a Immagine possono aiutarti a eseguire l'operazione inversa, purché la stringa sia completa e utilizzi il formato previsto.

Scelta del formato e input problematici

Base64 standard è adatto per email, URL di dati e sistemi che lo richiedono espressamente. Per percorsi URL, parametri di query e token, usa la variante prevista dal sistema di destinazione. Base64url può essere appropriato quando indicato dalle relative specifiche. Questo strumento usa l'operazione base64_encode standard di PHP, quindi non presumere che il risultato sia in formato Base64url.

Lo strumento codifica i byte dell'immagine caricata. Spazi, punteggiatura, numeri, caratteri accentati e testo non latino presenti in un SVG o nei metadati di un'immagine vengono codificati come parte di quei byte. Il nome del file, anche quando contiene tali caratteri, è separato dal suo contenuto e non viene rappresentato automaticamente da Base64.

In PHP, base64_encode restituisce un valore vuoto per una sequenza di byte vuota. I file lunghi producono stringhe lunghe e Base64 aggiunge circa un terzo al numero originale di byte, prima di considerare l'eventuale sintassi JSON o dell'URL di dati che racchiude il valore. Non comprime l'immagine, non ne migliora la qualità e non ne modifica le dimensioni in pixel.

Domande frequenti

Posso inserire un'immagine Base64 direttamente nel CSS?

Sì, le proprietà CSS che accettano URL di immagini possono usare un URL di dati formato correttamente. Questa soluzione è adatta a risorse piccole e autonome, ma le immagini incorporate di grandi dimensioni aumentano il peso del foglio di stile e non possono essere memorizzate nella cache separatamente dal file CSS.

Perché la mia stringa Base64 contiene interruzioni di riga?

Questo strumento restituisce un valore continuo, perché base64_encode di PHP non inserisce interruzioni di riga. Se sono presenti, sono state aggiunte durante una successiva operazione di copia o elaborazione altrove. Molti decodificatori ignorano gli spazi bianchi, ma le API più rigide potrebbero rifiutarli. Usa quindi una stringa continua quando le specifiche del sistema ricevente lo richiedono.

Se cambio il nome del file, cambia anche il valore Base64?

Base64 rappresenta i byte del file, non il suo nome. Rinominare un file senza modificarlo non cambia quindi la codifica. Modificare i metadati, salvare nuovamente l'immagine o convertirla in un altro formato cambia invece i byte e produce una stringa diversa.

Base64 può proteggere un'immagine privata?

No, Base64 può essere decodificato senza password o chiavi segrete. Per i contenuti riservati, usa sistemi adeguati di cifratura, autenticazione e controllo degli accessi. Ricorda inoltre che questo strumento invia l'immagine al proprio server tramite HTTPS per elaborarla.

Come posso verificare che la conversione sia riuscita?

Decodifica l'intera stringa e apri il risultato con un visualizzatore di immagini compatibile con il formato originale. Controlla che le dimensioni e il contenuto visibile corrispondano all'immagine di partenza e conserva gli eventuali caratteri di padding finali, a meno che il sistema di destinazione non richieda espressamente di rimuoverli.

Strumenti simili

Base64 a Immagine

Converti l'input Base64 in un'immagine con il nostro strumento Base64 in immagine per un rapido e facile recupero delle immagini.

4,637
19

Strumenti popolari