Notas da equipe sobre ofício, formatos e as pequenas decisões por trás de um bom recorte redondo.
Por que PNGs fotográficos são tão grandes
O PNG promete registrar cada pixel sem perder nenhum, e essa promessa sai cara numa foto. Com milhões de tons que mudam de leve quase não há nada para o compressor prever ou colapsar, então o arquivo incha. Uma foto banal de 1600x1200 pode ficar em 3 a 5 MB como PNG, mas a mesmíssima imagem como JPEG em qualidade 85 cabe em 200 a 400 KB. A diferença se resume à transformada de cosseno em que o JPEG se apoia, que recorta a imagem em blocos de 8x8, descarta o detalhe de alta frequência que o olho mal registra, e empacota o resto apertado. Material de tom contínuo, ou seja, quase toda fotografia, encolhe dramaticamente. A fidelidade perfeita do PNG ganha o seu lugar em gráficos chapados e trabalhos em andamento, mas é simplesmente o envoltório errado para uma foto que você pretende compartilhar.
Transparência e o canal alfa
Um canal alfa de 8 bits deixa um PNG registrar qualquer nível de opacidade por pixel, do totalmente vazado ao totalmente sólido. O JPG não oferece esse campo, então a transparência não tem onde morar. Quando o motor de imagem reconstrói um PNG como JPEG, ele primeiro assenta a imagem sobre um fundo escolhido, e esse fundo é branco por padrão, que é exatamente por que as regiões vazadas se leem como brancas depois. A conclusão é direta, um JPG transparente não pode existir, porque o formato não tem ideia disso. Quando o recorte tem que sobreviver, WebP ou o PNG intocado são as suas únicas rotas. A Araluma assenta no branco como preenchimento porque ele se mistura aos documentos, slides e anúncios de loja onde esses JPGs mais aparecem.
Desempenho de gravação medido
Todos esses saem do Chrome 148 num desktop Linux, apoiados na gravação JPEG do próprio navegador. A 0,12 MP, uma miniatura de 400x300 fecha em cerca de 10 a 15 ms. Suba para 0,78 MP, um quadro de 1024x768, e ele fica perto de 13 a 20 ms. Uma foto de 8 MP a 3840x2160 precisa de uns 1,4 segundo, e até um monstro de 48 MP a 8000x6000 só pede uns 1,5 segundo. Escrever um JPG assim supera com folga escrever um PNG da mesma imagem, e atropela de vez o AVIF, que tem que carregar um módulo separado e pode ralar por 25 segundos naquela imagem de 48 MP mesmo num desktop. No conjunto, esta é uma das rotas mais rápidas em qualquer lugar da família de conversão, e não custa nada extra para buscar, já que o gravador JPEG já mora em todo navegador.
EXIF e tratamento de metadados
Reconstruir a imagem limpa as suas marcas EXIF, IPTC e XMP do JPG resultante em todo navegador, o que varre coordenadas de GPS, o corpo da câmera, o carimbo de captura, o texto de direitos autorais e qualquer campo personalizado que o PNG carregava. Os perfis de cor ICC tomam uma rota separada, em que Chrome e Safari guardam o perfil sRGB na saída enquanto o Firefox o retira junto com o resto. Então o JPG é seguro em sRGB em todo lugar, mas uma marca de gama ampla como Display-P3 ou Adobe RGB não vai passar pelo Firefox. Se o seu fluxo depende de segurar todos esses metadados, gerencie-os com uma ferramenta dedicada depois. Para web e compartilhamento do dia a dia, perder as marcas é bem-vindo, enxugando um pouco de peso e puxando dados de localização para fora das suas fotos.
Quando os artefatos do JPG ficam visíveis
O JPEG raciocina em blocos de 8x8. Solte um salto duro entre duas cores muito diferentes dentro de um bloco e a compressão JPEG só consegue esboçá-lo com um punhado de termos de frequência, deixando franjas, um halo fraco de pixels mais claros ou mais escuros abraçando a borda. As fotografias escondem isso bem, já que as suas bordas nunca são afiadas como navalha e a microvariação ao redor mascara a aproximação. Mas capturas de tela, logos, caixas com bordas nítidas, letras ou lajes vizinhas de cor chapada o expõem em qualquer qualidade, porque é precisamente o sinal com que a matemática tem dificuldade. A regra se escreve sozinha, mantenha capturas de tela, logos e arte cheia de texto fora do JPG. Deixe-os em PNG, ou vá para WebP por um arquivo enxuto que desvia das franjas por completo.
Privacidade e onde o trabalho cai
Onde o trabalho cai depende da quantidade. Com uma única imagem, nada sai do navegador, e dá pra checar ao vivo em segundos. Abra o DevTools do Chrome, vá ao painel de Rede, filtre por XHR e Fetch e converta um arquivo. Nada aparece enquanto a codificação roda. Com dois ou mais, o Araluma os envia ao nosso servidor, que converte, junta o resultado e devolve um link de download. Esse link e os arquivos convertidos são apagados em cerca de 2 horas. O caminho de imagem única mantém tudo no dispositivo, fora da rede, enquanto um lote troca isso por dar conta de muitos arquivos de uma só vez. Para a captura de algo privado ou uma foto marcada com a sua localização, converter uma por vez mantém tudo na sua máquina, uma diferença de verdade, não um slogan.