Convertitore da PDF a Base64

Codifica un documento PDF in Base64 per richieste API, email o incorporamento in HTML. Un visualizzatore integrato mostra il PDF, così puoi verificare che sia il file giusto prima di copiare il risultato.

Funziona interamente nel tuo browser. Non viene caricato nulla.

Come si usa

  1. Trascina un PDF nell’area di caricamento o fai clic per sceglierne uno (fino a 100 MB).
  2. Guarda l’anteprima per assicurarti che sia il documento giusto.
  3. In Formato di output scegli Base64 puro per le richieste API, oppure Data URI per incorporare il PDF in una pagina web.
  4. Usa Copia per copiare il risultato oppure Scarica per salvarlo come file .txt.

Inviare PDF tramite API JSON

JSON non ha un tipo binario, quindi le API REST che ricevono documenti di solito li accettano come stringa Base64. Piattaforme di firma elettronica, sistemi di fatturazione anche elettronica, servizi di stampa e recapito postale, motori OCR e archivi documentali accettano comunemente i PDF in questo modo, in un campo come content, file o documentBase64, con il nome del file in un campo separato. Alcuni servizi restituiscono i PDF allo stesso modo; Base64 in PDF li riconverte in file.

Invia Base64 puro senza a capo, salvo diversa indicazione nella documentazione dell’API, perché molte API rifiutano un valore che contiene ancora il prefisso data:application/pdf;base64,. Tieni presenti anche i limiti di dimensione delle richieste: un PDF da 7,5 MB diventa circa 10 MB di Base64.

Riconoscere un PDF in Base64

Un file PDF inizia con i caratteri %PDF- seguiti dal numero di versione. Codificati in Base64, questi byte producono sempre una stringa che inizia con JVBERi0. Una lunga stringa che inizia con JVBER in una risposta API, in una colonna di database o in un file di log è quasi certamente un PDF. Lo stesso controllo funziona prima di inviare un payload: se la tua stringa inizia in qualunque altro modo, potresti aver codificato i dati sbagliati oppure averli codificati due volte.

Incorporare un PDF in HTML

Un data URI inserisce l’intero PDF in una pagina HTML, senza un file separato da ospitare:

<embed src="data:application/pdf;base64,JVBERi0..." type="application/pdf" width="100%" height="600">

<iframe src="data:application/pdf;base64,JVBERi0..." width="100%" height="600"></iframe>

Questa soluzione funziona nei browser desktop con un visualizzatore PDF integrato, ma ha dei limiti. Molti browser per dispositivi mobili non mostrano affatto i PDF all’interno di una pagina. Inoltre Chrome e alcuni altri browser impediscono a una pagina di indirizzare l’intera scheda a un URL data:, quindi un link o una chiamata window.open che punta a un URI data:application/pdf può aprire una scheda vuota o non fare nulla. Per aprire un PDF in una nuova scheda da JavaScript, converti invece il Base64 in un URL Blob. Per documenti più grandi di qualche megabyte, di solito è meglio un normale URL di file.

Codificare un PDF nel codice

# Python: costruisce il corpo di una richiesta JSON
import base64, json
from pathlib import Path

pdf_b64 = base64.b64encode(Path('invoice.pdf').read_bytes()).decode('ascii')
body = json.dumps({'filename': 'invoice.pdf', 'content': pdf_b64})

// Browser: file proviene da un <input type="file">
const reader = new FileReader();
reader.onload = () => {
  const pdfBase64 = reader.result.split(',')[1]; // rimuove il prefisso del data URI
};
reader.readAsDataURL(file);

Domande frequenti

Perché la stringa Base64 del mio PDF inizia con JVBERi0?
Questi caratteri sono la codifica Base64 di %PDF-, l’intestazione presente all’inizio di ogni file PDF. Vederli conferma che la stringa contiene un PDF.
Il PDF viene caricato quando lo converto?

No. Il file viene letto, codificato e mostrato in anteprima localmente nel tuo browser. Contratti, fatture e altri documenti riservati non lasciano mai il tuo dispositivo.

La codifica modifica o comprime il PDF?

No. La stringa Base64 si decodifica esattamente negli stessi byte, quindi protezione con password, firme digitali, campi dei moduli e metadati vengono conservati. Il testo è più grande del PDF di circa il 33%; per ridurne la dimensione, comprimi il PDF prima di codificarlo.

Devo attivare l’opzione A capo ogni 76 caratteri?

Solo quando il formato lo richiede, per esempio quando costruisci a mano un’email MIME, in cui le righe degli allegati sono limitate a 76 caratteri. Le API JSON e i data URI in HTML si aspettano un’unica stringa continua.

Quanto può essere grande il PDF?

Lo strumento accetta file fino a 100 MB. Per le API il limite pratico è di solito più basso, quindi controlla la dimensione massima delle richieste e ricorda che Base64 aggiunge circa un terzo. Un output molto lungo può essere lento da visualizzare: per i documenti grandi usa Scarica.