O IGCOMPRESSOR é uma sequência curta de etapas que roda dentro do seu navegador. Esta página descreve cada uma delas, com os números, para você julgar por conta própria se ela faz o que você precisa. Nada aqui é segredo; o valor está na ordem e nos padrões.

1. Decodificar no seu aparelho

Quando você solta um arquivo, o navegador decodifica a imagem com o próprio motor dele. JPEG, PNG, WebP e GIF funcionam em qualquer navegador; HEIC funciona no Safari, que decodifica nativamente; arquivos RAW de câmera são tratados carregando, sob demanda, um pequeno decodificador de código aberto que extrai a prévia em tamanho total embutida no RAW. A orientação gravada no EXIF é aplicada, então fotos em pé saem em pé.

A decodificação acontece num Web Worker quando o navegador permite, para a página continuar respondendo durante um lote de 50 fotos. Não existe etapa de upload porque não existe servidor que receba imagens. Você pode confirmar isso na aba Rede (Network) do navegador, ou desligando o Wi-Fi depois que a página carregar.

2. Recortar na proporção certa

Cada predefinição tem um formato: 4:5 para um post do feed do Instagram, 9:16 para um story, 16:9 para uma thumbnail do YouTube, 200×230 para um formulário de banco. A ferramenta recorta a imagem original nesse formato primeiro, ao redor do ponto que você escolhe arrastando a prévia. Recortar antes de redimensionar importa porque o redimensionamento passa a ter um único trabalho, e porque você vê o recorte antes de a plataforma decidir por você.

Predefinições do tipo "caber dentro de" (WhatsApp, Telegram, e-mail) pulam o recorte e só reduzem a foto para caber numa caixa.

3. Redimensionar em etapas

Reduzir uma foto de 6000 px para 1080 px de uma vez, com um filtro básico, joga fora detalhe de forma desigual. A ferramenta reduz a imagem pela metade repetidas vezes enquanto ela tem mais que o dobro do tamanho final, e depois faz o redimensionamento final com o filtro de maior qualidade do navegador. O resultado fica mais perto do que o Lightroom ou o Photoshop produzem do que do que um redimensionador de site comum entrega. A ampliação só é usada em predefinições de formulário que exigem pixels exatos.

4. Aplicar nitidez depois de redimensionar

Toda redução suaviza um pouco as bordas. A ferramenta aplica uma máscara de nitidez com raio de um pixel nos pixels finais, com uma intensidade que varia por predefinição (0,4 para posts do feed do Instagram, 0,35 para stories, 0,2 para fotos de formulário). Aplicar nitidez antes de redimensionar seria desperdício; esta é a etapa que as pessoas mais fazem na ordem errada.

Você pode mudar a intensidade em Mais opções: Desligada, Leve, Média (o padrão da predefinição) ou Forte. Confira o resultado com o botão Comparar em zoom 1:1.

5. Encontrar o tamanho de arquivo certo

A qualidade do JPEG não é linear. A ferramenta codifica a imagem com qualidade 95, confere o tamanho e, se passou do alvo, faz uma busca binária para baixo, em até sete codificações, até o arquivo cair logo abaixo do limite e o mais perto possível do alvo. Ela nunca vai abaixo da qualidade 35. Se nem isso for suficiente para o limite, ela reduz um pouco os pixels e busca de novo; isso só acontece no modo de tamanho exato, com limites muito pequenos.

Para o Instagram, o alvo fica entre 500 KB e 1 MB, mirando em cerca de 850 KB para uma imagem de 1080×1350. Essa faixa vem de muita tentativa e erro: arquivos menores mostram blocos depois da recodificação do próprio Instagram, e arquivos maiores tendem a ser comprimidos com mais força.

Para formulários que exigem um tamanho mínimo, a ferramenta pode completar o JPEG com um segmento de comentário inofensivo, para o arquivo nunca ser recusado por ser pequeno demais. Os pixels não são tocados.

6. Exportar

A saída é um JPEG baseline em sRGB, sem dados EXIF, ou WebP ou PNG se você escolher. A remoção de metadados é proposital: a sua localização, o número de série da câmera e a miniatura embutida (que pode ser uma versão mais antiga e sem recorte da foto) ficam no seu aparelho.

No celular, o botão Compartilhar entrega o arquivo para a tela de compartilhamento do sistema, então ele pode ir direto para o Instagram, o WhatsApp ou um formulário sem passar pela pasta de downloads. Lotes podem ser baixados como ZIP, que também é montado no navegador.

O que a ferramenta não consegue fazer

Ela não consegue impedir uma plataforma de recodificar o seu upload. Instagram, Facebook, WhatsApp e os outros sempre rodam a própria compressão. O que um arquivo bem preparado faz é não deixar nada além disso para essa compressão fazer: sem redimensionar, sem recortar, sem converter cor, e com um JPEG que já está na faixa que eles toleram. Esse é o truque inteiro, e é por isso que o resultado parece o que você enviou.

Ela também não recupera detalhe que já foi perdido. Uma foto que chegou pelo WhatsApp em 1600 px não vai virar uma imagem 4K nítida. Sempre que puder, parta do original.

Teste com a sua fotoSolte uma foto no topo da página. Dez segundos depois ela está no tamanho certo, nítida e pronta para publicar.
Comprimir uma foto