Imagem PNG (.png)

W3C Padrão

Portable Network Graphics (PNG) é um formato de arquivo de imagem raster sem restrições de uso que oferece suporte à compactação de dados sem perdas, cores indexadas e transparência com canal alfa variável.

Converter PNG para JPG

Conversor gratuito de PNG para JPG no navegador. Converta arquivos instantaneamente no seu dispositivo.

Comprimir PNG online

Privado - os arquivos nunca saem do seu dispositivo

Inspeção e metadados

Sistemas operacionais e analisadores de arquivos identificam arquivos PNG pela sequência inicial de bytes:

Selecione ou solte os arquivos aqui

Privado - os arquivos nunca saem do seu dispositivo

ou colar Ctrl+V
Garantia de privacidade sem transmissão pela rede 0 bytes enviados a servidores externos. Todo o processamento ocorreu localmente no ambiente isolado do navegador.

Assinatura do arquivo em bytes (magic bytes)

Sistemas operacionais e analisadores de arquivos identificam arquivos PNG pela sequência inicial de bytes:

ASSINATURA HEXADECIMAL (DESLOCAMENTO 0):

89 50 4E 47 0D 0A 1A 0A

REPRESENTAÇÃO ASCII: .PNG....

Padronização: W3C Recommendation (1996) / ISO/IEC 15948:2004

Especificações técnicas

Estrutura do contêinerContêiner binário baseado em blocos (chunks), com verificação CRC32 de 4 bytes por bloco
CompressãoDeflate (LZ77 + codificação Huffman) com 5 filtros preditivos de linha de varredura (None, Sub, Up, Average, Paeth)
Ordem dos bytes (endianness)Big-endian (ordem de bytes de rede) para comprimentos dos blocos, dimensões e CRCs
Espaços de corsRGB, Display P3, Paleta indexada (1 a 8 bits), Tons de cinza, Cor verdadeira (24/48 bits)
Canais e EstruturaRGB + alfa (até 16 bits por canal / RGBA de 64 bits)
Dimensões Máximas2.147.483.647 × 2.147.483.647 pixels (inteiros sem sinal de 4 bytes)
TransparênciaCanal de transparência alfa variável completo, de 8 ou 16 bits
Streaming e ProgressivoO algoritmo de entrelaçamento Adam7, com 7 passadas, permite renderizar as linhas da imagem progressivamente em 2D

Matriz de comparação técnica: PNG e formatos concorrentes

Atributo técnicoPNG (Atual)WebPAVIFJPEG
Tipo de compactaçãoEstritamente sem perdas (Deflate + filtros preditivos 2D)Com perdas (VP8) e sem perdas (VP8L)Com perdas (AV1 intra) e sem perdasEstritamente com perdas (transformada discreta de cosseno)
Transparência alfaCanal alfa variável completo, de 8 ou 16 bitsCanal alfa de 8 bits suportadoSuporte a alfa de 8 bits / 10 bits / 12 bitsSem suporte a canal de transparência
Tamanho do arquivo (fotografias)Grande (normalmente de 3 a 6 vezes maior que nos formatos com perdas)Pequeno (25% a 35% menor que o JPEG)Muito pequeno (40% a 55% menor que o JPEG)Referência de tamanho médio
Tamanho do arquivo (gráficos/interface)Extremamente compacto para capturas de tela, arte linear e textoExcelente modo sem perdasBom, mas mais lento para codificarRuim (produz halos ao longo de bordas nítidas)
Compatibilidade com navegadoresCompatível com todos os navegadores desde 1998Compatibilidade com mais de 97% dos navegadores modernosCompatibilidade com mais de 93% dos navegadores modernos100% universal

Modos comuns de corrupção e guia de recuperação com editor hexadecimal

O visualizador de imagens exibe 'Fatal error: Not a valid PNG file' ou falha ao abrir.

Causa principal: Os primeiros 8 bytes foram alterados por uma transferência em modo ASCII (que converteu 0x0D 0x0A em 0x0A ou 0x0D 0x0D 0x0A).

Recuperação: Abra o arquivo em um editor hexadecimal e confira se os primeiros 8 bytes correspondem a 89 50 4E 47 0D 0A 1A 0A. Restaurar exatamente esses bytes do cabeçalho costuma recuperar a imagem.

O pngcheck informa "CRC error in chunk IDAT" ou a imagem carrega parcialmente, com as linhas inferiores corrompidas.

Causa principal: Corrupção de bits no fluxo de dados zlib compactado ou soma de verificação CRC32 inválida em um bloco IDAT.

Recuperação: Use pngcheck -f ou ferramentas de recuperação do fluxo Deflate para recalcular valores CRC32 válidos, ou descompacte as linhas que ainda podem ser recuperadas antes do bloco corrompido.

A imagem é exibida corretamente em visualizadores de desktop, mas não em aplicativos iOS.

Causa principal: O iOS espera o formato proprietário da Apple com bytes CgBI invertidos ou blocos de espaço de cor fora do padrão.

Recuperação: Normalize a imagem com pngcrush -revert-iphone-optimizations para restaurar a ordem RGBA padrão do W3C.

Análise de segurança e vetores de ataque a analisadores

O PNG é compatível com muitos sistemas operacionais e aplicativos. Os riscos de segurança incluem esgotamento de memória do decodificador e blocos auxiliares maliciosos.

Vetores de ataque conhecidos

  • Blocos de metadados tEXt e zTXt grandes demais podem causar negação de serviço por esgotamento de memória (OOM) em decodificadores sem sandbox.
  • Vulnerabilidades de estouro de buffer de heap em versões legadas do libpng (por exemplo, CVE-2015-8126 em png_set_PLTE).
  • Ataques de inundação de pixels por descompactação, nos quais uma imagem pequena declara dimensões enormes (por exemplo, 100.000 × 100.000 pixels).
  • Exfiltração esteganográfica por meio de cargas criptografadas ocultas em blocos auxiliares privados (por exemplo, eXIf ou tipos de bloco personalizados).

Melhores práticas defensivas: Sempre valide as dimensões da imagem antes de alocar buffers de pixels na memória. Ao receber imagens de usuários, remova os blocos auxiliares não essenciais (eXIf, tEXt) com um sanitizador seguro para a memória.

Origens históricas e marcos

2004Padronizado internacionalmente como ISO/IEC 15948.
1996O PNG 1.0 foi publicado como recomendação do W3C.
1995Criado no grupo Usenet comp.graphics como substituto aberto do GIF, após a Unisys começar a cobrar pelo uso da patente LZW.

Principais vantagens

  • O PNG usa compressão sem perdas, por isso codificar uma imagem inalterada não introduz perdas de compressão; edições ou conversões de cor ainda podem alterar os valores dos píxeis.
  • A transparência alfa suave de 8 bits permite uma mesclagem limpa em fundos complexos.
  • Blocos de correção de gama e cromaticidade ajudam a garantir uma renderização consistente em diferentes monitores.

Limitações técnicas e desvantagens

  • Arquivos significativamente maiores que os de formatos modernos com perdas, como WebP ou AVIF, quando usados para fotografias.
  • O PNG padrão não oferece animação nativa com vários quadros (é necessária a extensão APNG).
  • Imagens com profundidade de 16 bits por canal geram buffers de decodificação descompactados enormes na memória.

Curiosidades técnicas

  • O cabeçalho mágico de 8 bytes foi projetado especificamente para detectar corrupção de fim de linha CR/LF por transferências FTP.
  • O acrônimo recursivo não oficial para PNG era 'PNG's Not GIF'.
  • A Apple usa um bloco proprietário CgBI em PNGs de aplicativos iOS que inverte RGBA para BGRA para renderização direta na GPU.

Perguntas técnicas frequentes

Por que o tamanho de um arquivo PNG às vezes aumenta quando é salvo em editores de imagem?

Diferentes conjuntos de software usam níveis variados de compactação Deflate e heurísticas diferentes para os filtros preditivos de linha. Programas como o Photoshop costumam acrescentar perfis de cores descompactados, blocos de metadados XMP e blocos IDAT de tamanho não otimizado. Ferramentas dedicadas, como o Compressor do File2File.app, reavaliam os cinco filtros de linha para obter o menor arquivo possível.

Qual é a diferença entre PNG-8 e PNG-24?

O PNG-8 usa uma paleta indexada de até 256 cores (semelhante à do GIF), gerando arquivos muito pequenos, adequados para ícones simples. O PNG-24 suporta 16,7 milhões de cores (Truecolor de 8 bits por canal), enquanto o PNG-32 acrescenta um canal alfa de 8 bits para transparência.

Por que o PNG tem cinco filtros preditivos de linha?

O Deflate compacta padrões de bytes repetidos. Como os valores dos pixels em fotos ou gradientes mudam gradualmente, o PNG aplica um filtro a cada linha (None, Sub, Up, Average, Paeth), calculando as diferenças entre pixels adjacentes. Isso transforma os dados de gradiente em sequências de bytes próximos de zero, que o Deflate compacta com muito mais eficiência.

O PNG suporta espaços de cores CMYK para impressão comercial?

Não. A especificação oficial do PNG do W3C limita deliberadamente os tipos de cor a escala de cinza, paleta indexada e RGB. Fluxos de trabalho de impressão profissional que exigem CMYK devem usar arquivos TIFF ou PDF.

Conversões de PNG relacionadas

PNG para JPG

Converter imagens rasterizadas PNG para o formato JPEG reduz o tamanho do arquivo aplicando compressão com perdas, o que faz com que as imagens carreguem mais rapidamente nos sites e utilizem menos espaço de armazenamento.

JPG para PNG

Converter uma imagem rasterizada JPEG com perdas numa imagem rasterizada PNG sem perdas evita perdas de qualidade adicionais e acrescenta suporte à transparência do canal alfa.

PNG para WEBP

A conversão de imagens PNG para WebP pode reduzir o tamanho do arquivo e manter a transparência; o resultado depende do uso de codificação com ou sem perdas e do conteúdo da imagem.

WEBP para PNG

A conversão de WebP para PNG cria uma imagem estática para programas compatíveis com PNG; ela não mantém a animação WebP, e não é possível recuperar detalhes já perdidos na origem.

HEIC para PNG

Converter HEIC para PNG transforma fotos comprimidas com HEVC com perdas em arquivos gráficos sem perdas amplamente suportados.

SVG para PNG

A conversão de arquivos vetoriais SVG para imagens rasterizadas PNG transforma gráficos escaláveis baseados em código em grades fixas de pixels para compatibilidade universal com aplicativos.

PNG para SVG

Incorpore imagens raster PNG em um contêiner SVG baseado em XML para redimensioná-las de forma responsiva na web e integrá-las a layouts vetoriais.

PSD para PNG

Converta arquivos gráficos PSD do Adobe Photoshop em imagens PNG sem perdas e com transparência completa do canal alfa, diretamente no navegador e sem enviar dados a servidores.