Conversor Base64 para imagem

Última revisão do conteúdo:

Basta colar uma string Base64, clicar em Descodificar e transferir o ficheiro de imagem. O conversor reconhece oito formatos, e o resultado fica byte a byte igual ao ficheiro que foi codificado. A forma em texto ocupa, por seu lado, cerca de um terço a mais.

Pré-visualização da imagem

Cole Base64 e clique em Descodificar para ver a pré-visualização

para

O que é o Base64 e o que é uma data URI?

O Base64 escreve dados binários, e portanto também um ficheiro de imagem terminado, como uma cadeia de caracteres de texto comuns. A conversão avança de três em três bytes. Um byte tem oito bits, ao passo que um único carácter Base64 leva seis. Três bytes do ficheiro cabem assim em exatamente quatro caracteres de texto. O alfabeto tem 64 posições: maiúsculas de A a Z, minúsculas de a a z, algarismos de 0 a 9, o sinal de mais e a barra. Quando no fim faltam bytes para completar um grupo de quatro, o sinal de igual ocupa os lugares livres.[1]

Tabela dos sessenta e quatro caracteres do Base64 numerados de 0 a 63
Todo o alfabeto Base64 numa só imagem. O número à esquerda de cada par é o valor de seis bits, e o carácter ao lado mostra como esse valor se escreve em texto. Nas duas últimas posições, a 62 e a 63, estão o sinal de mais e a barra. Gráfico: Arteon, elaboração própria.

É assim que se transportam os anexos do correio eletrónico, e é assim que uma imagem entra diretamente no código de uma página, sem ficheiro à parte no servidor.[2]

A cadeia por si só ainda não diz o que representa. Disso trata a data URI, um endereço cuja estrutura vem descrita no documento RFC 2397 de agosto de 1998. Escreve-se data:[tipo][;base64],dados. Numa imagem PNG o início fica assim: data:image/png;base64, — e logo a seguir à vírgula vem a cadeia. Se o tipo for omitido, quem a recebe assume que lhe entregaram texto simples.[3]

Os navegadores bloqueiam hoje a abertura de endereços data: na janela principal, porque assim circulavam páginas de phishing.[4] Uma imagem guardada num endereço desses vê-se no código que a contém, ou numa ferramenta que leia esse endereço. Basta colar a cadeia no campo acima e carregar no botão Descodificar.

Como converter Base64 em imagem?

Cole a cadeia no campo Base64 do lado esquerdo e carregue no botão Descodificar. A imagem aparece no cartão Pré-visualização da imagem, e por baixo fica o botão Transferir, que guarda o ficheiro no disco com o nome imagem-descodificada. O botão Limpar tudo esvazia o campo e a pré-visualização ao mesmo tempo.

O prefixo data:image/png;base64, tanto pode ser colado com a cadeia como ficar no código de onde copia. Sem prefixo, o conversor lê os primeiros dezoito bytes dos dados e reconhece o formato pela assinatura do próprio ficheiro. É dessa leitura que depende a extensão do ficheiro transferido: uma imagem BMP fica gravada como imagem-descodificada.bmp, e um ícone de site como imagem-descodificada.ico.

Todo o trabalho acontece no seu computador. A cadeia fica na memória do separador aberto, o ficheiro nasce no seu dispositivo, e assim que fecha a página ambos saem da memória do navegador.

O conversor lê uma cadeia partida em várias linhas?

Uma cadeia copiada do código-fonte de uma mensagem costuma vir partida a cada 76 caracteres, e o conversor lê-a exatamente nessa forma. A norma pela qual os navegadores leem Base64 manda retirar primeiro dos dados todos os caracteres de espaço, incluindo os espaços e os fins de linha.[5] Uma cadeia colada em doze linhas dá a mesma imagem que uma cadeia colada numa só. O sentido contrário cabe ao conversor de imagem para Base64, que escreve a cadeia inteira numa só linha, sem quebras.

Porque é que a cadeia Base64 é mais longa do que o ficheiro?

A forma em texto precisa de quatro caracteres por cada três bytes, por isso a cadeia ocupa mais espaço do que os dados que descreve. A conta é curta: divide o número de bytes por três, arredonda para cima e multiplica por quatro.

Desta fórmula saem dois números que dão a ordem de grandeza. Um ícone de site pesa 2 678 bytes e, depois de codificado, dá 3 572 caracteres. Uma fotografia de 1920 por 1280 píxeis pesa 476 485 bytes, e a sua forma em texto conta 635 316 caracteres. O crescimento ronda de cada vez um terço, ou seja, cerca de 33 por cento.[2] A folha de estilos ou o modelo de mensagem onde essa imagem for colada cresce exatamente outro tanto.

O Base64 transporta os dados e nada altera dentro deles. Depois de descodificar, recebe um ficheiro igual byte a byte àquele que foi codificado. Verificámo-lo em oito ficheiros de formatos diferentes, comparando as somas de verificação antes de codificar e depois de voltar a ler.

O comprimento da cadeia é limitado pelo próprio navegador. O Chromium e o Firefox aceitam hoje endereços data: até 512 MB, e o Safari até 2048 MB. No Firefox esse limite mudou duas vezes. A versão 97 subiu-o de 256 KB para 32 MB. A versão 136 levou-o aos 512 MB de hoje.[4]

Que formatos reconhece o conversor?

A assinatura corresponde aos primeiros bytes de um ficheiro, aqueles pelos quais se reconhece o seu formato, e o tipo MIME é o nome que o conversor escreve na data URI. O conversor lê dezoito desses bytes e é por eles que nomeia a imagem sempre que a cadeia não traz prefixo data URI. No WebP a marca WEBP fica quatro bytes depois de RIFF, e o ficheiro transferido é guardado como imagem-descodificada com a extensão da última coluna.
Formato de imagemAssinaturaTipo MIMEExtensão
PNG89 50 4E 47image/png.png
JPGFF D8image/jpeg.jpg
WebPRIFF + WEBPimage/webp.webp
GIFGIF87a / GIF89aimage/gif.gif
AVIFftypavifimage/avif.avif
BMPBMimage/bmp.bmp
SVG<svg / <?xmlimage/svg+xml.svg
ICO00 00 01 00image/x-icon.ico
Os oito formatos foram verificados a 4 de setembro de 2026 num navegador assente no motor Chromium, nas duas formas da cadeia: com prefixo e sem ele. A pré-visualização aparece em ambas, e o ficheiro transferido recebe a extensão da última coluna.

Quantos caracteres ocupa uma imagem em Base64?

Seis tamanhos que realmente vão parar ao código das páginas. Todos saíram de uma mesma fotografia, para que a comparação trate apenas do tamanho do ficheiro, seja qual for o conteúdo da imagem.
ImagemDimensões em píxeisTamanho do ficheiro em bytesCaracteres da cadeia Base64
Ícone de site em PNG32 × 322 6783 572
Gráfico de página em WebP800 × 600104 128138 840
Fotografia de artigo em JPG1200 × 630157 419209 892
Fotografia de banner em JPG1920 × 1280476 485635 316
Logótipo com fundo transparente em PNG512 × 512577 420769 896
Fotografia de câmara em JPG3840 × 25601 405 5121 874 016
O número de caracteres calcula-se pela fórmula: os bytes divididos por três, arredondados para cima e multiplicados por quatro.[1] O prefixo data URI acrescenta ainda entre 22 caracteres no tipo image/png e 26 caracteres em image/svg+xml.

Em que diferem os dois alfabetos do Base64?

Um mesmo documento descreve dois conjuntos de caracteres. O primeiro vai para as data URI e para o correio eletrónico, o segundo para os sítios onde o sinal de mais e a barra têm significado próprio.
Elemento da codificaçãoAlfabeto padrãoAlfabeto para endereços e nomes de ficheiro
Carácter número 62sinal de maishífen
Carácter número 63barrasublinhado
Carácter de preenchimentosinal de igualsinal de igual, nos tokens costuma ser omitido
Onde o encontradata URI, código da página, anexos de correioparâmetros de endereço, tokens JWT, nomes de ficheiro
O que fazer com essa cadeiacole-a no campo e carregue em Descodificarcole-a no campo e carregue em Descodificar, o conversor troca os caracteres sozinho
Ambos os conjuntos de caracteres constam do RFC 4648: o padrão na secção 4 e o destinado a endereços na secção 5.[1]

O que pode colar no campo?

Colámos cada uma destas formas no campo e descodificámo-la com o botão Descodificar num navegador Chromium a 17 de setembro de 2026. A última coluna diz o que o conversor faz com o texto e que ficheiro guarda o botão Transferir.
O que colaExemploO que o conversor faz
Apenas a cadeia Base64iVBORw0KGgoAAAANSUhEUgAA…Reconhece o PNG pelos primeiros bytes e guarda imagem-descodificada.png
Uma data URIdata:image/png;base64,iVBORw0KGgo…Tira o tipo do prefixo e guarda imagem-descodificada.png
Uma linha de uma folha de estilosbackground-image: url("data:image/png;base64,iVBORw0KGgo…");Tira o endereço de url(…) e guarda imagem-descodificada.png
Uma etiqueta img do código da página<img src="data:image/jpeg;base64,/9j/4AAQSkZJRg…" alt="">Tira o endereço do atributo src e guarda imagem-descodificada.jpg
Um valor JSON entre aspas"iVBORw0KGgoAAAANSUhEUgAA…"Deixa de fora as aspas e guarda imagem-descodificada.png
O alfabeto para endereços e nomes de ficheiro_9j_4AAQSkZJRgABAQ…Troca - e _ por + e / e guarda imagem-descodificada.jpg
Um SVG escrito com sinais de percentagemdata:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'…Lê-o sem Base64 e guarda imagem-descodificada.svg
Um prefixo em maiúsculasDATA:IMAGE/PNG;BASE64,iVBORw0KGgo…Lê o prefixo independentemente de maiúsculas e minúsculas e guarda imagem-descodificada.png
O alfabeto para endereços e nomes de ficheiro consta da secção 5 do RFC 4648.[1]

Onde encontra uma cadeia Base64 para colar?

Quatro sítios onde a imagem está guardada como texto, com a parte que deve selecionar.

  1. O código-fonte da página guarda a cadeia no atributo src

    Abra a página e carregue em Ctrl+U, ou Cmd+Option+U num Mac. Na janela do código procure o fragmento data:image. Selecione-o juntamente com toda a cadeia que se lhe segue, até às aspas que fecham o atributo src. Também pode copiar a etiqueta <img> inteira, e o conversor tira dela o endereço.
  2. A folha de estilos guarda-a na propriedade background-image

    Uma imagem de fundo escreve-se muitas vezes como background-image: url("data:image/png;base64,…"). Cole no campo a linha inteira ou apenas o endereço: o conversor tira sozinho o endereço de dentro de url(…).
  3. Uma mensagem de correio contém-na no seu código-fonte

    A vista do código-fonte de uma mensagem mostra as imagens embutidas no corpo. Antes delas vem o cabeçalho Content-Transfer-Encoding: base64, e a cadeia começa depois de uma linha em branco e vem partida a cada 76 caracteres. Copie-a por inteiro, com essas quebras.
  4. Uma resposta de API entrega-a como valor de um campo

    O JSON transporta apenas texto, por isso os serviços que devolvem uma imagem devolvem-na em Base64, como valor de um único campo. Copie o valor desse campo, com as aspas que o rodeiam ou sem elas.

O que fazer com a imagem depois de descodificada?

O ficheiro transferido é uma imagem comum e entra em qualquer outra ferramenta. Por baixo dos campos está um seletor de formatos com a indicação Base64 para JPG. Um clique em qualquer um dos dois formatos abre uma lista, e a escolha que fizer leva-o à página do conversor desse par.

  1. A imagem recebe novas dimensões

    Um ficheiro tirado do código traz as dimensões que alguém escolheu para aquela página. Dá-lhe outras no editor de fotografias Helios, onde corta o enquadramento e indica a largura pretendida.
  2. O ficheiro vai para um site

    Um PNG tirado de uma folha de estilos costuma pesar mais do que aquilo de que uma página precisa hoje. Um ficheiro mais leve, com a transparência intacta, sai do conversor PNG para WebP.
  3. O ficheiro descodificado revelou-se o ícone do site

    A extensão .ico significa que o ficheiro descodificado é o ícone de um site. Os restantes tamanhos do ícone, com as etiquetas prontas a colar no código, vêm do gerador de favicon.
  4. O sentido contrário

    A sua própria imagem transforma-se numa cadeia pronta a colar no código com o conversor de imagem para Base64. É o mesmo par de ferramentas, ao contrário.

Converter outros ficheiros para JPG

Fontes

  1. RFC 4648: The Base16, Base32, and Base64 Data Encodings — IETF
  2. Base64 — Wikipédia
  3. RFC 2397: The "data" URL scheme — IETF
  4. Data URLs — MDN Web Docs
  5. Infra Standard, forgiving base64 decode — WHATWG

Os tamanhos de ficheiro das tabelas foram medidos passando imagens reais por este conversor num navegador e apresentamo-los tal como a ferramenta os conta. O que dizemos sobre ambos os formatos assenta nas fontes indicadas acima.

Última revisão do conteúdo: · escrito e verificado pela equipa Arteon

Perguntas frequentes sobre converter Base64 em imagem

O que fazer quando a cadeia não tem o prefixo data:image/…?

Cole a cadeia sozinha e carregue em Descodificar. O conversor lê os primeiros dezoito bytes dos dados, reconhece por eles o formato e acrescenta ele próprio o prefixo em falta antes de desenhar a pré-visualização.

A cadeia colada chega a algum servidor?

Todo o trabalho acontece no seu navegador. A cadeia fica na memória do separador desde que a cola até fechar a página, e o ficheiro que transfere nasce no seu próprio dispositivo.

Descodificar altera a qualidade da imagem?

O ficheiro descodificado é igual byte a byte ao ficheiro que foi codificado. O Base64 transporta os dados noutra forma e nada lhes retira, por isso a qualidade depende apenas do original.

A cadeia tem hífenes e sublinhados no lugar do mais e da barra. O que fazer?

Esse é o alfabeto destinado a endereços e nomes de ficheiro, descrito na secção 5 do RFC 4648. Cole-a no campo tal como está e carregue em Descodificar. Antes de descodificar, o conversor troca sozinho cada hífen por um sinal de mais e cada sublinhado por uma barra.

Que comprimento de cadeia aceita o navegador?

O Chromium e o Firefox tratam hoje endereços data: até 512 MB, e o Safari até 2048 MB. Uma fotografia de câmara dá, depois de codificada, uma cadeia com menos de dois milhões de caracteres, ou seja, menos de 2 MB de texto, pelo que cabe nesses limites com enorme folga.

Porque é que uma cadeia colada na barra de endereço não mostra a imagem?

Os navegadores bloqueiam a abertura de endereços data: na janela principal, porque assim eram enviadas páginas de phishing. A imagem de um endereço desses vê-se no código que a contém, ou neste conversor.

O conversor abre um endereço escrito com percentagens, sem Base64?

Sim. Um endereço na forma data:image/svg+xml,%3Csvg… cola-se como qualquer outro, e o ficheiro transferido recebe a extensão .svg. As ferramentas de compilação usam essa escrita quando colocam um gráfico vetorial diretamente no código.

Como transformo a minha própria imagem numa cadeia Base64?

Desse sentido trata o conversor de imagem para Base64. Aí adiciona um ficheiro e a ferramenta devolve uma data URI pronta a colar no código.

Captura de ecrã da ferramenta gratuita da Arteon: Conversor Base64 para imagem

Ajude-nos a melhorar as nossas ferramentas

Tem uma ideia, encontrou um erro ou quer sugerir algo? Envie-nos uma mensagem.

Descubra outras ferramentas úteis