Conversor de Base64 para WebP

Salve imagens WebP codificadas em Base64 como arquivos, ou transforme dados PNG e JPEG em Base64 em WebP, um formato moderno que costuma ser menor com qualidade visual semelhante.

Funciona inteiramente no seu navegador. Nada é enviado.

Como usar

  1. Cole uma string Base64 ou um URI data:image/webp;base64. Qualquer outro formato de imagem também funciona.
  2. Confira a prévia, o formato detectado e o tamanho decodificado.
  3. Mantenha WebP em Baixar como para converter, ou escolha Original para salvar os bytes exatamente como foram decodificados.
  4. Baixe o arquivo .webp e compare o tamanho dele com o do original.

Como reconhecer dados WebP

O WebP é armazenado em um contêiner RIFF, o mesmo invólucro usado pelo áudio WAV. O arquivo começa com o texto ASCII RIFF, então o Base64 dele começa com UklGR; alguns bytes depois, o marcador WEBP confirma que o contêiner guarda uma imagem, e não som. Por dentro, a imagem pode ser com perdas (VP8), sem perdas (VP8L) ou um arquivo estendido (VP8X), que acrescenta transparência, animação ou metadados. O tipo MIME é image/webp.

Por que converter para WebP

Segundo as medições do Google, arquivos WebP com perdas são cerca de 25 a 34 por cento menores que JPEGs de qualidade comparável, e o WebP sem perdas é cerca de 26 por cento menor que o PNG. Ao contrário do JPEG, o WebP mantém um canal alfa, então logotipos e figurinhas com transparência são convertidos sem problemas. Todos os principais navegadores atuais exibem WebP.

Arquivos menores contam em dobro quando as imagens são incorporadas: uma imagem mais leve também significa uma string Base64 mais curta no seu HTML, CSS ou JSON. Depois de converter, você pode codificar o novo arquivo novamente com WebP para Base64.

O resultado nem sempre é menor. Ícones minúsculos, fotos já bem comprimidas e gráficos planos com poucas cores às vezes ficam maiores; nesse caso, PNG ou JPG é a melhor escolha. Converter aqui também é uma forma rápida de testar quanto uma imagem específica ganharia antes de mudar um pipeline de build: cole um PNG ou JPEG em Base64, baixe o WebP e compare os dois tamanhos.

Conversão com o Pillow

Para tarefas em lote em um servidor, a mesma conversão exige poucas linhas de Python com a biblioteca Pillow:

import base64, io
from PIL import Image

img = Image.open(io.BytesIO(base64.b64decode(b64_string)))
img.save('output.webp', 'WEBP', quality=80)

Perguntas frequentes

O WebP mantém a transparência?

Sim. O WebP oferece canal alfa completo tanto no modo com perdas quanto no modo sem perdas, então as áreas transparentes continuam transparentes após a conversão.

Posso manter um WebP animado?

Baixe como Original para manter todos os quadros. A conversão passa por um canvas, que captura um único quadro estático.

A saída em WebP é sempre menor que a entrada?

Não. Fotos grandes e capturas de tela geralmente encolhem, mas imagens pequenas ou muito otimizadas podem crescer. Compare o tamanho decodificado mostrado pela ferramenta com o tamanho do arquivo baixado.

Alguns programas não abrem meu arquivo WebP. O que posso fazer?

Visualizadores de imagem e programas de escritório mais antigos podem não ter suporte a WebP. Cole o mesmo Base64 e baixe como PNG ou JPG.