Decodificar Base64 para PDF
Cole um string PDF codificado em Base64 para decodificar e baixar como arquivo PDF. Esta ferramenta aceita tanto strings Base64 puros (começando com JVBERi) quanto data URIs completos (data:application/pdf;base64,...). A conversão é instantânea e funciona completamente no seu navegador.
Como Usar
- Mude para a aba “Base64 para PDF” acima
- Cole um string Base64 ou data URI
- A ferramenta detecta o formato PDF e mostra detalhes do arquivo
- Clique em Baixar para salvar o PDF
Onde Encontrar PDFs em Base64
Respostas de API
APIs de geração de documentos (geradores de faturas, plataformas de contratos, serviços de relatórios) frequentemente retornam PDFs como strings Base64 em respostas JSON:
{
"status": "success",
"document": "JVBERi0xLjQKMSAwIG9iago...",
"filename": "invoice-2024-001.pdf"
}
Anexos de e-mail (MIME)
O código fonte do e-mail bruto mostra anexos PDF como blocos codificados em Base64 entre os limites MIME:
Content-Type: application/pdf
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="report.pdf"
JVBERi0xLjQKMSAwIG9iago8PAovVHlwZS...
Registros de banco de dados
Aplicativos que armazenam documentos em colunas de texto (comum em produtos em estágio inicial ou protótipos) codificam PDFs como strings Base64. Extrair o documento requer decodificação.
Configuração e automação
Pipelines de CI/CD, ferramentas de infraestrutura como código e segredos do Kubernetes às vezes armazenam certificados PDF ou arquivos de licença como valores codificados em Base64 em arquivos de configuração.
Detecção de PDF
Todo arquivo PDF começa com os bytes mágicos %PDF (hex 25 50 44 46), seguido por um número de versão como 1.4, 1.7 ou 2.0. Em Base64, esses bytes codificam para JVBERi. Esta ferramenta usa essa assinatura para identificar automaticamente conteúdo PDF, mêsmo sem prefixo data URI.
Decodificando em Código
JavaScript
function base64ToPdfBlob(base64) {
const binary = atob(base64);
const bytes = new Uint8Array(binary.length);
for (let i = 0; i < binary.length; i++) {
bytes[i] = binary.charCodeAt(i);
}
return new Blob([bytes], { type: 'application/pdf' });
}
const blob = base64ToPdfBlob(base64String);
const url = URL.createObjectURL(blob);
window.open(url);
Python
import base64
base64_string = "JVBERi0xLjQK..."
pdf_bytes = base64.b64decode(base64_string)
with open("output.pdf", "wb") as f:
f.write(pdf_bytes)
Linha de comando
echo "JVBERi0xLjQK..." | base64 -d > output.pdf
Renderização de PDF Inline
Navegadores podem renderizar PDFs a partir de data URIs em elementos iframe e embed:
<iframe
src="data:application/pdf;base64,JVBERi0xLjQK..."
width="100%"
height="600px"
></iframe>
Limites de Tamanho
A decodificação Base64 no navegador funciona de forma confiável até dezenas de megabytes:
- Abaixo de 5 MB: sem problemas em qualquer navegador moderno
- 5-50 MB: pode causar uma breve pausa durante a decodificação
- Acima de 50 MB: considere decodificação no servidor para evitar pressão na memória do navegador
Esta ferramenta define um limite de 50 MB para evitar erros de falta de memória.
Notas de Segurança
PDFs podem conter JavaScript, ações de envio de formulário, links externos e arquivos embutidos. A decodificação Base64 não sanitiza o conteúdo. Você recebe o arquivo original exato. Se o Base64 vier de fonte não confiável, abra o PDF decodificado em um visualizador isolado ou verifique antes de processar.
Para a operação inversa, veja PDF para Base64. Para decodificação geral de arquivos, use Base64 para Arquivo.