PNG

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Links: Added link to Jeff Atwood article)
m
Line 16: Line 16:
 
== Format ==
 
== Format ==
  
A PNG file consists of an 8-byte signature (hex <code>89 50 4E 47 0D 0A 1A 0A</code>), followed by a sequence of "chunks". Each chunk has an 8-byte header, 4 bytes of which indicate the chunk length, and 4 bytes of which are a label indicating the type of data stored in the chunk. Each chunk also has a 4-byte trailer which stores a checksum.
+
A PNG file consists of an 8-byte signature (hex <code>89 50 4E 47 0D 0A 1A 0A</code>), followed by a sequence of "chunks". Each chunk has an 8-byte header, 4 bytes of which indicate the chunk length, and 4 bytes of which are a [[FourCC|chunk type code]] indicating the type of data stored in the chunk. Each chunk also has a 4-byte trailer which stores a checksum.
  
 
== Extensions ==
 
== Extensions ==
 
{| class="wikitable"
 
{| class="wikitable"
! Chunk ID
+
! Chunk type
 
! References
 
! References
 
|-
 
|-

Revision as of 17:40, 26 December 2015

File Format
Name PNG
Ontology
Extension(s) .png
MIME Type(s) image/png
LoCFDD fdd000153
PRONOM fmt/13, fmt/12, fmt/11
Released 1996

Portable Network Graphics (PNG) was devised starting in a discussion on newsgroup comp.graphics in 1995, with the first version of its specification released in 1996. The motivation for its creation was to create a free and unencumbered image format in the wake of the patent issue with GIF.

PNG has become a very popular graphic format, but widespread adoption on the Web was slow due to the fact that the first specification came out over a year after the Web had begun to be popular with the general public, meaning that there were many sites and browsers out there not using and supporting the new format; subsequently, browsers began to support it, but often had rendering problems which persisted even in fairly late versions years later; this caused webmasters to be slow to switch from GIF to PNG, though some are doing so now. Since the LZW patent that affected GIF is expired now, the "free format" motivation for the switch no longer applies.

Unlike GIF, PNG officially supports only still graphics, not animation. However APNG, an unofficial extension of the PNG image format that retains the .png file extention does support animation. Another related format, MNG, officially does support animation.

Contents

Format

A PNG file consists of an 8-byte signature (hex 89 50 4E 47 0D 0A 1A 0A), followed by a sequence of "chunks". Each chunk has an 8-byte header, 4 bytes of which indicate the chunk length, and 4 bytes of which are a chunk type code indicating the type of data stored in the chunk. Each chunk also has a 4-byte trailer which stores a checksum.

Extensions

Chunk type References
oFFs, pCAL, sCAL, gIFg, gIFx, gIFt, fRAc Refer to Extensions to the PNG 1.2 Specification, v1.2.0.
sTER Refer to Extensions to the PNG 1.2 Specification, v1.3.0.
dSIG Refer to Extensions to the PNG 1.2 Specification, v1.4.0, and the PNG dSIG website.
acTL, fcTL, fdAT Used in APNG files.
vpAg Used by ImageMagick.
CgBI Refer to CgBI.

Related Formats

Specifications

Metaformat files

Software

Sample files

Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox