Cabeçalho de PDF
- Entrada
- JVBERi0xLjQK
- Saída esperada
- %PDF-1.4 (PDF)
9 bytes: %PDF-1.4 e uma quebra de linha.
base64 para pdf
Cole o texto no campo de Base64 para arquivo. Em meio segundo a ferramenta decodifica, confere se os primeiros bytes são %PDF- e mostra o documento na prévia. Se algo estiver errado, ela diz o quê e em qual posição.
9 bytes: %PDF-1.4 e uma quebra de linha.
O prefixo é removido e anotado.
Espaços e quebras de linha são ignorados, como manda a RFC 2045.
11 caracteres: o resto 3 vale 2 bytes, e o = é acrescentado.
4 x ceil(1.000.000 / 3).
Cole o Base64 (com ou sem o prefixo data:application/pdf;base64,) e confira se o tipo detectado é PDF. Um PDF em Base64 começa com JVBERi, que é %PDF- codificado. A ferramenta mostra o PDF na prévia e baixa com extensão .pdf. Se a resposta da API for um JSON, cole o JSON inteiro: ela encontra o campo mais longo que parece Base64 e deixa trocar de campo.
Pode ter um prefixo data:application/pdf;base64, antes, estar dentro de um JSON, estar codificado duas vezes (aí começa com algo como SlZCRVJp, e a ferramenta oferece decodificar de novo) ou nem ser PDF. O tipo detectado aparece logo abaixo do campo.
Sim. O campo Nome do arquivo é editável antes do download, e caracteres proibidos em nomes de arquivo são trocados por sublinhado.
Não. A decodificação, o SHA-256 e a prévia usam apenas memória do seu navegador, e nada vai a servidor.
import base64
with open('arquivo.bin.b64', 'r') as src, open('arquivo.bin', 'wb') as dst:
dst.write(base64.b64decode(src.read()))import base64
with open('arquivo.pdf', 'rb') as src, open('arquivo.pdf.b64', 'w') as dst:
dst.write(base64.b64encode(src.read()).decode('ascii'))Tudo é processado no seu navegador. Nada é enviado.