Formato PNG — compressão sem perdas e fundo transparente
PNG: nascido da patente do GIF, da Recomendação W3C de 1996 à 3ª edição de 2025, compressão sem perdas, chunks, transparência e peso em fotos.
O PNG (Portable Network Graphics) foi criado em meados dos anos 1990 para contornar o problema de patente da compressão LZW usada no GIF e, ao mesmo tempo, oferecer recursos melhores que os do GIF. Tornou-se Recomendação W3C em 1996 e depois foi padronizado também como ISO/IEC 15948. Em junho de 2025, a 3ª edição do PNG, a primeira revisão em 22 anos desde a 2ª edição (2003), foi publicada como Recomendação W3C, incluindo oficialmente no padrão o PNG animado (APNG), informações de cor HDR e o chunk EXIF.
Como a compressão funciona
O PNG é um formato sem perdas, que não altera nenhum valor de pixel. Um filtro é aplicado a cada linha para transformar os valores em algo fácil de prever, como "a diferença em relação ao pixel da esquerda ou de cima", e depois tudo é comprimido com o algoritmo Deflate, da mesma família do zip. Quando uma mesma cor se repete em áreas grandes, as diferenças viram sequências de zeros e a compressão fica muito pequena; em fotos, onde cada pixel varia um pouco, quase não há compressão.
Reduzir as cores para 256 ou menos e salvar no modo paleta (cores indexadas) diminui muito o tamanho, mas esse processo em si é uma perda por redução de cores. Lembre-se: mesmo sendo PNG, o resultado fica diferente do original.
Assinatura do arquivo e estrutura de chunks
Todo arquivo PNG começa com uma assinatura de 8 bytes (em hexadecimal 89 50 4E 47 0D 0A 1A 0A). Em seguida vêm unidades chamadas chunks, cada uma composta de comprimento, tipo (4 letras), dados e valor de verificação CRC.
| Chunk | Função |
|---|---|
| IHDR | Largura, altura, profundidade de bits e tipo de cor |
| PLTE | Paleta (em cores indexadas) |
| tRNS | Transparência de imagens com paleta ou cor única |
| IDAT | Dados de pixels comprimidos (podem ser divididos em vários) |
| eXIf | Metadados EXIF (incluído oficialmente na 3ª edição) |
| cICP | Informações de espaço de cor, como HDR (adicionado na 3ª edição) |
| acTL · fcTL · fdAT | Controle e quadros da animação APNG (incluídos oficialmente na 3ª edição) |
| IEND | Fim do arquivo |
O formato foi projetado para ignorar chunks auxiliares desconhecidos, então programas antigos continuam abrindo o arquivo mesmo com recursos novos. É por isso que visualizadores sem suporte a APNG mostram só o primeiro quadro.
Transparência
O PNG pode ter, em cada pixel, um canal alfa de 0 a 255 níveis (0 a 65.535 em 16 bits), representando com naturalidade até sombras semitransparentes e bordas de cabelo. É por isso que ele é o formato padrão para imagens sem fundo, logos e ícones.
Vantagens e limitações
- Ideal para texto, linhas e gráficos: as bordas continuam nítidas e o arquivo muitas vezes é menor que o JPG.
- Sem perdas ao salvar de novo: adequado para arquivos intermediários de edição.
- Ineficiente para fotos: a mesma foto ocupa várias vezes o tamanho do JPG.
- Suporte a APNG: segundo o Can I use, suportado desde o Chrome 59, Firefox 3 e Safari 8; programas sem suporte exibem só o primeiro quadro.
Uso principal
Capturas de tela, logos e ícones, imagens com fundo transparente, diagramas e gráficos, originais para edição. Também é usado quando uma gráfica exige arquivos sem perdas.
Ao converter para outros formatos
- PNG → JPG: as áreas transparentes precisam ser preenchidas com uma cor de fundo. Capturas de tela em JPG podem borrar em volta das letras, então mantenha a qualidade alta (PNG para JPG).
- PNG → WebP: convertendo para WebP sem perdas, a transparência é mantida e o arquivo muitas vezes diminui. O Google divulgou que o WebP sem perdas é em média 26% menor que o PNG.
- PNG → ICO: se precisar de favicon ou ícone do Windows, converta PNG para ICO. O ideal é usar um original quadrado.
- PNG de 16 bits: o Canvas do navegador trabalha com 8 bits por canal, então um original de 16 bits convertido numa ferramenta web é reduzido para 8 bits.