Conversor de Arquivo para Base64 (com suporte a data URI, nos dois sentidos)

Converta qualquer arquivo (imagem, PDF etc.) em uma string Base64 ou data URI, ou decodifique uma string Base64 / data URI de volta em um arquivo para download. Tudo é processado no seu navegador; os arquivos nunca são enviados a um servidor.

O que é a conversão de arquivo para Base64

Base64 é um esquema de codificação que representa dados binários (imagens, PDFs e qualquer outro tipo de arquivo) usando apenas 64 caracteres imprimíveis: A-Z, a-z, 0-9, + e /. Desenvolvedores recorrem a ele sempre que precisam incorporar o conteúdo de um arquivo em um local que só consegue transportar texto com segurança, como uma carga JSON, uma folha de estilos CSS ou HTML puro. Ao colocar a informação do tipo MIME antes da string codificada, como em data:image/png;base64,..., obtém-se um data URI que o navegador consegue interpretar diretamente como uma imagem, sem precisar buscar um arquivo separado.

Esta ferramenta funciona nos dois sentidos: converte qualquer arquivo em uma string Base64 ou data URI, e decodifica uma string Base64 ou um data URI de volta ao arquivo original para download. Toda a conversão é executada como JavaScript dentro do seu navegador, usando as APIs FileReader e Blob, portanto o conteúdo do arquivo nunca é transmitido a um servidor externo. Isso a torna tão útil para inspecionar rapidamente um trecho Base64 misterioso encontrado no código-fonte de outra pessoa quanto para lidar com arquivos sensíveis que você prefere não enviar a lugar nenhum.

Como converter arquivos para Base64 e vice-versa

  1. Escolha o sentido da conversão Selecione "Arquivo → Base64" ou "Base64 → Arquivo", dependendo do que você quer fazer.
  2. Informe o arquivo ou o texto Base64 No modo Arquivo → Base64, arraste ou selecione um arquivo. No modo Base64 → Arquivo, cole uma string Base64 ou um data URI.
  3. Deixe a conversão acontecer automaticamente Assim que você seleciona ou cola a entrada, a conversão acontece instantaneamente dentro do seu navegador.
  4. Confira o tipo MIME detectado (Base64 → Arquivo) Se a entrada não for um data URI completo, aparece um menu de tipo MIME — escolha o formato que corresponde ao arquivo original.
  5. Copie o resultado ou baixe o arquivo Copie a string codificada ou baixe o arquivo reconstruído para concluir o processo.

Dicas para aproveitar melhor

  • O modo Arquivo → Base64 aceita qualquer tipo de arquivo (imagens, PDFs, áudio etc.) e permite copiar tanto o data URI quanto a string Base64 simples.
  • No modo Base64 → Arquivo, cole um data URI completo começando com data: e o tipo MIME é detectado automaticamente. Para uma string Base64 simples, selecione o tipo MIME manualmente.
  • Toda a conversão é executada inteiramente no JavaScript do seu navegador: o conteúdo do arquivo ou a string Base64 nunca é enviado a um servidor, o que torna a ferramenta segura para arquivos sensíveis.
  • Para incorporar um pequeno ícone diretamente em CSS ou HTML, cole a saída do data URI diretamente em background-image: url(...) ou no atributo src de uma tag <img>.
  • A codificação Base64 torna o resultado cerca de 33% maior que o arquivo original, então converter arquivos muito grandes (dezenas de megabytes ou mais) pode deixar o navegador lento.

Casos de uso comuns

Incorporar um pequeno ícone diretamente em CSS

Converta uma imagem de ícone em um data URI e insira-a diretamente em uma propriedade background-image, evitando uma requisição HTTP extra para um recurso minúsculo.

Enviar um arquivo dentro de uma carga útil de API em JSON

Codifique uma imagem ou anexo como uma string Base64 para que ela possa viajar como um simples valor de string no corpo de uma requisição ou resposta JSON.

Inspecionar um trecho Base64 encontrado no código-fonte

Cole uma string Base64 desconhecida encontrada em código HTML ou CSS para decodificá-la de volta em um arquivo visível e ver exatamente o que ela contém.

Incorporar uma imagem em linha em um e-mail HTML

Codifique um logotipo ou ícone em Base64 para incorporá-lo diretamente no corpo de um e-mail HTML, sem precisar de um anexo separado.

Glossário

Base64
Um esquema de codificação que representa dados binários usando apenas 64 caracteres ASCII imprimíveis: A-Z, a-z, 0-9, + e /. Não é criptografia, apenas uma forma de tornar bytes arbitrários seguros para transportar como texto.
Data URI
Um formato que incorpora o conteúdo de um arquivo codificado em Base64 diretamente dentro de uma URL. Como também carrega a informação do tipo MIME, pode ser usado diretamente como origem de uma imagem ou como plano de fundo no CSS.
Tipo MIME
Um identificador que descreve o formato de um arquivo, escrito como "tipo/subtipo" (por exemplo, image/png ou application/pdf). Os navegadores o usam para decidir como tratar determinado arquivo.
Codificação
O processo de converter dados de uma representação para outra. A codificação Base64, especificamente, converte dados binários em uma string de texto imprimível.
Processamento no cliente
Tratar os dados inteiramente dentro do navegador do usuário, em vez de enviá-los a um servidor. Toda conversão feita por esta ferramenta acontece no lado do cliente, então os arquivos nunca saem do seu dispositivo.
Sobrecarga no tamanho da carga útil
O aumento de cerca de 33% no tamanho dos dados causado pela codificação Base64. É uma consequência inevitável de reempacotar dados binários de 8 bits em caracteres de 6 bits.

Perguntas frequentes

Base64 é um esquema de codificação que representa dados binários (imagens, áudio, executáveis ou qualquer outro formato) usando apenas 64 caracteres ASCII imprimíveis: A-Z, a-z, 0-9, + e /. Não é criptografia — é simplesmente uma forma de representar bytes arbitrários como texto seguro e imprimível.

Um data URI incorpora o conteúdo de um arquivo diretamente dentro de uma URL como uma string codificada em Base64, como data:image/png;base64,iVBOR.... Como também carrega o tipo MIME, é possível usá-lo diretamente no atributo src de uma tag <img> ou em um background-image do CSS para exibir a imagem.

Não. A conversão desta ferramenta (codificação e decodificação usando FileReader e Blob) é executada inteiramente como JavaScript dentro do seu navegador. Nem o conteúdo do arquivo, nem a string Base64 resultante, são enviados a um servidor.

Sim. Se o texto colado não for um data URI completo começando com data:, aparece um menu de seleção de tipo MIME — escolha manualmente o formato original do arquivo (imagem, PDF, texto etc.) antes de baixar.

O Base64 reempacota dados binários de 8 bits em caracteres de 6 bits, então o resultado codificado fica com cerca de 4/3 do tamanho original, ou seja, um aumento de cerca de 33%. Essa sobrecarga é uma característica inevitável de como a codificação Base64 funciona.
Tool-kun

Curiosidade — Por que o Base64 deixa os arquivos 33% maiores

A codificação Base64 existe porque muitos canais de transporte — e-mail, JSON, URLs — só conseguem transportar com segurança texto ASCII imprimível. Enviar dados binários arbitrários (como uma imagem ou um executável) sem alterações corre o risco de corrupção por caracteres de controle perdidos, então o Base64 foi criado para representar qualquer conteúdo binário usando apenas 64 caracteres imprimíveis: A-Z, a-z, 0-9, + e /.

O Base64 divide 3 bytes (24 bits) de dados binários em quatro blocos de 6 bits e mapeia cada bloco para um caractere Base64. Reempacotar dados binários de 8 bits em caracteres de 6 bits faz com que o resultado codificado acabe ocupando cerca de 4/3 do tamanho original — um aumento de aproximadamente 33%. Esse aumento de tamanho é o preço pago por um transporte seguro como texto.

Esse mesmo truque é aproveitado nos data URIs, que incorporam pequenas imagens diretamente em HTML ou CSS como data:image/png;base64,.... Isso evita uma requisição HTTP extra para recursos minúsculos como ícones, o que pode acelerar o carregamento da página. No entanto, o aumento de cerca de 33% no tamanho e a perda do cache do navegador tornam essa abordagem pouco adequada para arquivos de imagem grandes.