Conversor Base64 para imagem
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, um terço a mais.
Pré-visualização da imagem
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]

É 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.
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ó.
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.
Por cima 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. O sentido contrário, escrever um ficheiro terminado como cadeia de caracteres, cabe ao conversor de imagem para Base64.
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?
| Formato de imagem | Assinatura | Tipo MIME | Extensão |
|---|---|---|---|
| PNG | 89 50 4E 47 | image/png | .png |
| JPG | FF D8 | image/jpeg | .jpg |
| WebP | RIFF + WEBP | image/webp | .webp |
| GIF | GIF87a / GIF89a | image/gif | .gif |
| AVIF | ftypavif | image/avif | .avif |
| BMP | BM | image/bmp | .bmp |
| SVG | <svg / <?xml | image/svg+xml | .svg |
| ICO | 00 00 01 00 | image/x-icon | .ico |
Quantos caracteres ocupa uma imagem em Base64?
| Imagem | Dimensões em píxeis | Tamanho do ficheiro em bytes | Caracteres da cadeia Base64 |
|---|---|---|---|
| Ícone de site em PNG | 32 × 32 | 2.678 | 3.572 |
| Gráfico de página em WebP | 800 × 600 | 104.128 | 138.840 |
| Fotografia de artigo em JPG | 1200 × 630 | 157.419 | 209.892 |
| Fotografia de banner em JPG | 1920 × 1280 | 476.485 | 635.316 |
| Logótipo com fundo transparente em PNG | 512 × 512 | 577.420 | 769.896 |
| Fotografia de câmara em JPG | 3840 × 2560 | 1.405.512 | 1.874.016 |
Em que diferem os dois alfabetos do Base64?
| Elemento da codificação | Alfabeto padrão | Alfabeto para endereços e nomes de ficheiro |
|---|---|---|
| Carácter número 62 | sinal de mais | hífen |
| Carácter número 63 | barra | sublinhado |
| Carácter de preenchimento | sinal de igual | sinal de igual, nos tokens costuma ser omitido |
| Onde o encontra | data URI, código da página, anexos de correio | parâmetros de endereço, tokens JWT, nomes de ficheiro |
| O que fazer com essa cadeia | cole-a no campo e carregue em Descodificar | troque cada hífen por um sinal de mais e cada sublinhado por uma barra, depois carregue em Descodificar |
Onde encontra uma cadeia Base64 para colar?
Quatro sítios onde a imagem está guardada como texto, com a parte que deve selecionar.
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 fragmentodata:image. Selecione-o juntamente com toda a cadeia que se lhe segue, até às aspas que fecham o atributosrc.A folha de estilos guarda-a na propriedade background-image
Uma imagem de fundo escreve-se muitas vezes comobackground-image: url("data:image/png;base64,…"). Cole no campo apenas o endereço, ou seja, a parte que vai da palavradataaté às aspas de fecho, deixando de fora ourl(do início e o parêntese do fim.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çalhoContent-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.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 conteúdo desse campo sem as aspas que o rodeiam.
O que fazer com a imagem depois de descodificada?
O ficheiro transferido é uma imagem comum e entra em qualquer outra ferramenta.
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 imagens, onde corta o enquadramento e indica a largura pretendida.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.O ficheiro descodificado revelou-se o ícone do site
A extensão.icosignifica 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.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
- RFC 4648: The Base16, Base32, and Base64 Data Encodings — IETF
- Base64 — Wikipédia
- RFC 2397: The "data" URL scheme — IETF
- Data URLs — MDN Web Docs
- 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. Troque no editor cada hífen por um sinal de mais e cada sublinhado por uma barra, cole o resultado no campo e carregue em Descodificar.
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í carrega um ficheiro e a ferramenta devolve uma data URI pronta a colar no código.

Ajude-nos a melhorar as nossas ferramentas
Tem uma ideia, encontrou um erro ou quer sugerir algo? Envie-nos uma mensagem – respondemos em 24 horas.







