formatos de arquivo - png

24
PNG Gabriel de Oliva Bemfica Isabel Schreiber Rocha Scarlazzari Luter Caio da Cruz Nobre Magno de Almeida Leitão

Upload: gabriel-bemfica

Post on 16-Dec-2014

2.688 views

Category:

Technology


1 download

DESCRIPTION

Essa apresentação descreve a história, usos e resumo sobre o formato de arquivos digitais PNG, usado como extensão para alguns arquivos de imagem.NOTA: As animações que descrevem o algoritmo Adam7 e a comparação entre o método de entrelaçamento do PNG e do GIF não estão funcionando no slide. Para a primeira animação (descrição visual do algoritmo Adam7), visite:http://migre.me/5BhTYPara a segunda animação (comparativo), visite:http://migre.me/5BhSv

TRANSCRIPT

Page 1: Formatos de arquivo - PNG

PNGGabriel de Oliva Bemfica

Isabel Schreiber Rocha ScarlazzariLuter Caio da Cruz NobreMagno de Almeida Leitão

Page 2: Formatos de arquivo - PNG

PNG - resumo• Formato de arquivo de imagens, similar ao

GIF, ao JPEG e ao BMP;

• Proposto em 1995/6 como substituição ao recém-patenteado GIF;

• Utiliza compressão sem perdas;

• Permite profundidade de cor de até 64 bits;

• Não suporta animação;

• Suportado pela maioria dos navegadores e editores de imagem.

Page 3: Formatos de arquivo - PNG

História•O PNG (pronuncia-se “ping”) foi proposto primeiramente na lista de discussão comp.graphics da Usenet, após o anúncio, pelas empresas Unisys e CompuServe, de que o algoritmo de compressão do formato GIF havia sido patenteado, e que seus utilizadores (desenvolvedores, não consumidores finais) deveriam pagar royalties para seu uso.

Page 4: Formatos de arquivo - PNG

História• O formato foi inicialmente proposto por Thomas

Boutell. Em pouco tempo, grandes nomes da área de TI e de imagens se juntaram ao projeto, como Adam Costello (responsável pelo algoritmo de entrelaçamento), Greg Roelofs (responsável pela ideia do CRC e mantenedor do projeto na internet), Lee Daniel Crocker (programador presente também na criação do GIF e do JPEG), entre outros.

• O nome original seria Portable Bitmap Format. A sugestão de PING como sigla para “PNG Is Not GIF”, com extensão .PNG, foi mantida em parte no projeto, final, mas com a alteração do significado para Portable Network Graphics.

Page 5: Formatos de arquivo - PNG

Aspectos técnicosEstrutura:

•Cabeçalho (8 bytes): Define as características básicas do arquivo, servindo para identificar o formato e o tipo de sistema (UNIX/DOS) em que está rodando;

•Segmentos (“n” bytes): São diversos pedaços de código que dizem respeito a variadas partes do arquivo, bem como características diversas.

Page 6: Formatos de arquivo - PNG

Aspectos técnicosEstrutura - cabeçalho:

• Bit inicial: (89, em hexadecimal): Bit de valor alto, define que o arquivo não deve ser lido em codificações de texto, como ASCII;

• Nomeação (50, 4E e 47): São os valores em HEX para as letras PNG;

• Quebras de linha (0D0A e 0A): São usadas para detectar o sistema no qual o arquivo está sendo aberto;

• Fim de arquivo (“end-of-file”): Dá início à seção dos segmentos.

Page 7: Formatos de arquivo - PNG

Aspectos técnicosEstrutura - segmentos:

•São divididos em 2: segmentos críticos (obrigatórios) e auxiliares (opcionais);

•Estrutura: dimensão (valor de 4 bytes), tipo (4 bytes), dados (tamanho definido pela “dimensão”) e CRC (4 bytes);

•Podem estar em qualquer ordem, desde que o segmento IHDR seja o primeiro e o IEND, o último;

Page 8: Formatos de arquivo - PNG

Aspectos técnicosEstrutura - segmentos:

• Segmentos críticos: IHDR (contém o cabeçalho), PLTE (contém a paleta de cores, obrigatório somente para PNGs com cores indexadas), IDAT (contém os dados do arquivo, a imagem em si - pode ser dividido em vários segmentos) e IEND (indica o fim do arquivo);

• Existem diversos segmentos auxiliares, indicando parâmetros, que vão da cor de fundo à data da última modificação do arquivo, passando por segmentos que definem a transparência, entre outros.

Page 9: Formatos de arquivo - PNG

Aspectos técnicosProfundidade de cor:

•Existem 5 níveis: cores indexadas (paleta, até 8 bits), escala de cinza (16 bits), escala de cinza com canal alfa (com transparência, 24 bits), true-color (24 bits) e true-color com canal alfa (32 bits);

•Alguns computadores e monitores podem trabalhar com um modo especial de 16 bits por canal + 16 bits de transparência, criando PNGs de 64 bits.

Page 10: Formatos de arquivo - PNG

Aspectos técnicosTransparência:

• O PNG possui um canal dedicado para transparência, com até 8 bits (diferentemente do GIF, onde apenas um nível de transparência era possível, sacrificando-se uma cor da paleta);

• Possibilita anti-aliasing com fundos de qualquer cor, não possuindo o problema de “efeito fantasma” criado por transparências no GIF;

• Pode ser usado também no modo de cores indexadas, onde uma cor com transparência ocupa um espaço na paleta.

Page 11: Formatos de arquivo - PNG

Exemplo do “efeito fantasma”

Page 12: Formatos de arquivo - PNG

Aspectos técnicosCompressão:

• Usa um método lossless (sem perdas) chamado DEFLATE;

• O método DEFLATE foi criado, originalmente, para arquivos ZIP. Seu autor colaborou diretamente na criação do PNG, e é citado como co-autor do formato;

• O método DEFLATE mistura os métodos LZ77 e Huffman para criar uma compressão sem perdas;

• Essa característica faz do PNG um método sem perda geracional de qualidade, ao contrário, por exemplo, do JPEG.

Page 13: Formatos de arquivo - PNG

Aspectos técnicosEntrelaçamento:

• Utiliza o algoritmo Adam7, de 7 passos;

• Permite ao usuário identificar traços-chave da imagem antes que a mesma seja completamente carregada;

• O entrelaçamento é opcional no PNG. Todavia, seu método é superior, por exemplo, ao método padrão de entrelaçamento do GIF.

Page 14: Formatos de arquivo - PNG

Exemplificação do algoritmo de entrelaçamento Adam7

Page 15: Formatos de arquivo - PNG

Comparação dos entrelaçamentos de GIF e PNG

Page 16: Formatos de arquivo - PNG

Aspectos técnicosAnimação e variações do formato:

•O PNG não suporta animações. Todavia, os formatos MNG (oficial) e APNG (não oficial, desenvolvido pela Mozilla) são alternativas;

•O formato JNG é uma mescla de JPEG com PNG, possibilitando compressão a nível de JPG com uma camada de transparência;

•Nenhum dos 3 formatos tem ampla aceitação ou uso.

Page 17: Formatos de arquivo - PNG

Comparação com outros formatos

JPEG:

• Compressão: sem perdas no PNG, perda geracional no JPEG;

• Transparência: suporte a alfa inexistente no JPEG (apenas com JNG);

• Tamanho de arquivo: a compressão do JPEG garante arquivos até 10 vezes menores. Para trabalhos profissionais, usa-se RAW ou TIFF, e somente depois do trabalho pronto salva-se em JPEG (a perda de qualidade com apenas uma compressão não é significativa);

• Tags EXIF: O PNG não tem suporte a armazenamento EXIF, presente no JPEG.

Page 18: Formatos de arquivo - PNG

Comparação com outros formatos

TIFF:

• Tamanho de arquivo: com tamanhos iguais, a qualidade de uma imagem TIFF é superior à de uma imagem PNG;

• Transparência: ambos os formatos suportam transparência;

• Complexidade: devido à sua estrutura complexa, o TIFF não é amplamente suportado em programas de visualização de imagens (como navegadores).

Page 19: Formatos de arquivo - PNG

Comparação com outros formatos

GIF:

• Tamanho de arquivo: geralmente o PNG, nas mesmas configurações do GIF, gera arquivos menores para a mesma imagens, porém, há excessões;

• Transparência: ambos os formatos suportam transparência, mas de apenas um nível no GIF, e de 8 bits (256 níveis) no PNG;

• Profundidade de cor: O GIF está restrito a 8 bits, contra até 64 no PNG;

• Entrelaçamento: o tempo total para carregar uma mesma imagem é semelhante, mas o método do PNG permite discernir a imagem mais rapidamente;

• Animação: suportada no PNG somente através dos formatos MNG e APNG, nativa no GIF;

• Compatibilidade: navegadores mais antigos não suportam completamente o PNG.

Page 20: Formatos de arquivo - PNG

Suporte e compatibilidade

Editores:

•Adobe Photoshop;

•Corel PhotoPaint

•Corel PaintShop Pro;

•GIMP

•Inkscape;

•Paint.NET.

Page 21: Formatos de arquivo - PNG

Suporte e compatibilidade

Visualizadores:

•Windows PictView;

•Apple Preview;

•Apple iPhoto;

•Aplicativos diversos para Linux.

Page 22: Formatos de arquivo - PNG

Suporte e compatibilidade

Navegadores:

•Internet Explorer;

•Netscape;

•Baseados em WebKit (Safari, Chrome, etc);

•Firefox;

•Opera;

•Konqueror;

•Entre outros.

Page 23: Formatos de arquivo - PNG

Suporte e compatibilidade

Sistemas Operacionais:

•Windows;

•Mac OS;

•Linux (diversos);

•AmigaOS;

•Sistemas menores (ArchOS, etc);

•Sistemas móveis (iOS, Android, etc).

Page 24: Formatos de arquivo - PNG

Bibliografia• Wikipédia (em inglês):

• en.wikipedia.org/wiki/Portable_Network_Graphics

• en.wikipedia.org/wiki/Comparison_of_graphic_file_formats

• en.wikipedia.org/wiki/Comparison_of_web_browsers#Image_format_support

• Outros sites:

• pt.kioskea.net/contents/video/format-png.php3

• www.libpng.org