O formato PNG

Março 2017

O formato PNG

O formato PNG - Portable Network Graphics é um formato de arquivo gráfico tipo bitmap. Ele foi criado em 1995 para fornecer uma alternativa livre ao formato GIF, formato proprietário cujos direitos são a empresa Unisys (proprietária do algoritmo de compressão LZW), que exige de cada editor de software que manipula este formato pagar direitos autorias. Assim, o PNG é um acrônimo recorrente para PNG' s Not Gif.

Quais são as características do formato PNG

O formato PNG permite armazenar imagens em preto e branco (até 16 bits por pixels de profundidade de codificação), em cores reais (True color, até 48 bits por pixels de profundidade de codificação), bem como imagens indexadas,fazendo uso de uma paleta de 256 cores. Além disso, ele suporta a transparência por camada alfa, ou seja, a possibilidade de definir 256 níveis de transparência, enquanto o formato GIF permite definir apenas uma só cor da paleta como transparente. O PNG possui igualmente uma função de entrelaçamento que permite exibir a imagem progressivamente. Na verdade, o formato PNG pode compactar imagens sem perda de qualidade - lossless compression, de 5 a 25% melhor que a compressão GIF.

Por último, o PNG integra informações sobre a gama da imagem, o que torna possível a correção da gama e uma independência no que diz respeito aos periféricos de exibição. Os mecanismos de correção dos erros estão integrados no arquivo, para garantir a sua integridade.

Como o arquivo PNG é estruturado

Um arquivo PNG é constituído por uma assinatura, permitindo indicar que se trata de arquivo de formato PNG, por meio de elementos chamados de chunks (porém o termo 'segmentos' é utilizado frequentemente).

A assinatura de um arquivo PNG, em código decimal, é a seguinte:
137 80 78 71 13 10 26 10

A assinatura em código hexadecimal é:
89 50 4E 47 0D 0A 1A 0A
.

Cada segmento (chunk) é composto por 4 partes:

A dimensão, um número inteiro não assinado de 4 bytes, descrevendo a dimensão do segmento
O tipo de segmento - chunk type: um código de 4 caracteres (4 bytes) compostos por caracteres ASCII alfanuméricos (TER- A-Z, a-z, 65 a 90 e 97 a 122) que permitem determinar a natureza do segmento
Os dados do segmento - chunk data
O CRC - cyclic redundancy check, um código corretor de 4 bytes que permite verificar a integridade do segmento

Os segmentos podem estar presentes em qualquer ordem, mas devem começar pelo segmento de rubrica (IHDR chunk) e terminar pelo segmento de fim (IEND chunk)
Os principais segmentos chamados de critical chunks são:

IHDR Image header
PLTE Palette
IDAT Image data
IEND Image trailer

Os outros segmentos chamados de anciliary chunks são os seguintes:

bKGD Background color
cHRM Primary chromaticities and white point
gAMA Image gamma
hIST Image histogram
pHYs Physical pixel dimensions
sBIT Significant bits
tEXt Textual data
tIME Image last-modification time
tRNS Transparency
zTXt Compressed textual data

Se você deseja aprofundar essas informações visite os sites W3C e o LibPNG.org, bem como o artigo Especificações do formato PNG (versão 1.0).

Veja também


PNG format
PNG format
Formato PNG
Formato PNG
PNG-Format
PNG-Format
PNG - Format PNG
PNG - Format PNG
Il formato PNG
Il formato PNG
Este documento, intitulado 'O formato PNG', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.