PNG (Portable Network Graphics) Specification, Version 1.2


Previous page
Next page
Table of contents

11. Glossary

ab or a^b
Exponentiation; a raised to the power b. Note that zero raised to any positive power is zero. C programmers should be careful not to misread this notation as exclusive-or.

Alpha
A value representing a pixel's degree of transparency. The more transparent a pixel, the less it hides the background against which the image is presented. In PNG, alpha is really the degree of opacity: zero alpha represents a completely transparent pixel, maximum alpha represents a completely opaque pixel. But most people refer to alpha as providing transparency information, not opacity information, and we continue that custom here.

Ancillary chunk
A chunk that provides additional information. A decoder can still produce a meaningful image, though not necessarily the best possible image, without processing the chunk.

Bit depth
The number of bits per palette index (in indexed-color PNGs) or per sample (in other color types). This is the same value that appears in IHDR.

Byte
Eight bits; also called an octet.

Channel
The set of all samples of the same kind within an image; for example, all the blue samples in a truecolor image. (The term "component" is also used, but not in this specification.) A sample is the intersection of a channel and a pixel.

Chromaticity
A pair of values x,y that precisely specify a color, except for the brightness information.

Chunk
A section of a PNG file. Each chunk has a type indicated by its chunk type name. Most types of chunks also include some data. The format and meaning of the data within the chunk are determined by the type name.

CIE
International Commission on Illumination (Commission Internationale de l'Éclairage).

CIE XYZ
A device-independent color space in which each component is the sum of a weighted power distribution over the visible spectrum. The Y component is luminence (see below).

CIE LAB
A perceptually linear color space.

Composite
As a verb, to form an image by merging a foreground image and a background image, using transparency information to determine where the background should be visible. The foreground image is said to be "composited against" the background.

CRC
Cyclic Redundancy Check. A CRC is a type of check value designed to catch most transmission errors. A decoder calculates the CRC for the received data and compares it to the CRC that the encoder calculated, which is appended to the data. A mismatch indicates that the data was corrupted in transit.

Critical chunk
A chunk that must be understood and processed by the decoder in order to produce a meaningful image from a PNG file.

CRT
Cathode Ray Tube: a common type of computer display hardware.

Datastream
A sequence of bytes. This term is used rather than "file" to describe a byte sequence that is only a portion of a file. We also use it to emphasize that a PNG image might be generated and consumed "on-the-fly", never appearing in a stored file at all.

Deflate
The name of the compression algorithm used in standard PNG files, as well as in zip, gzip, pkzip, and other compression programs. Deflate is a member of the LZ77 family of compression methods.

Filter
A transformation applied to image data in hopes of improving its compressibility. PNG uses only lossless (reversible) filter algorithms.

Frame buffer
The final digital storage area for the image shown by a computer display. Software causes an image to appear onscreen by loading it into the frame buffer.

Gamma
Informally, a measure of the brightness of mid-level tones in an image. Outside this specification, the term "gamma" is often used as the exponent of a power function that is the transfer function of any stage(s) of an imaging pipeline:
   output = input ^ gamma

where both input and output are scaled to the range 0 to 1. Within this specification, gamma refers specifically to the function from display output to image samples.

Grayscale
An image representation in which each pixel is represented by a single sample value representing overall luminance (on a scale from black to white). PNG also permits an alpha sample to be stored for each pixel of a grayscale image.

Indexed color
An image representation in which each pixel is represented by a single sample that is an index into a palette or lookup table. The selected palette entry defines the actual color of the pixel.

Intensity
Power per unit area of light entering or leaving a surface. It is often normalized to the range 0 to 1 by dividing by a maximum intensity.

Lossless compression
Any method of data compression that guarantees the original data can be reconstructed exactly, bit-for-bit.

Lossy compression
Any method of data compression that reconstructs the original data approximately, rather than exactly.

LSB
Least Significant Byte of a multi-byte value.

Luminance
Perceived brightness, or grayscale level, of a color. Luminance and chromaticity together fully define a perceived color.

LUT
Look Up Table. In general, a table used to transform data. In frame buffer hardware, a LUT can be used to map indexed-color pixels into a selected set of truecolor values, or to perform gamma correction. In software, a LUT can be used as a fast way of implementing any one-variable mathematical function.

MSB
Most Significant Byte of a multi-byte value.

Palette
The set of colors available in an indexed-color image. In PNG, a palette is an array of colors defined by red, green, and blue samples. (Alpha values can also be defined for palette entries, via the tRNS chunk.)

Pixel
The information stored for a single grid point in the image. The complete image is a rectangular array of pixels.

PNG editor
A program that modifies a PNG file and preserves ancillary information, including chunks that it does not recognize. Such a program must obey the rules given in Chunk Ordering Rules.

Sample
A single number in the image data; for example, the red value of a pixel. A pixel is composed of one or more samples. When discussing physical data layout (in particular, in Image layout), we use "sample" to mean a number stored in the image array. It would be more precise but much less readable to say "sample or palette index" in that context. Elsewhere in the specification, "sample" means a color value or alpha value. In the indexed-color case, these are palette entries not palette indexes.

Sample depth
The precision, in bits, of color values and alpha values. In indexed-color PNGs the sample depth is always 8 by definition of the PLTE chunk. In other color types it is the same as the bit depth.

Scanline
One horizontal row of pixels within an image.

Truecolor
An image representation in which pixel colors are defined by storing three samples for each pixel, representing red, green, and blue intensities respectively. PNG also permits an alpha sample to be stored for each pixel of a truecolor image.

White point
The chromaticity of a computer display's nominal white value.

zlib
A particular format for data that has been compressed using deflate-style compression. Also the name of a library implementing this method. PNG implementations need not use the zlib library, but they must conform to its format for compressed data.


Previous page
Next page
Table of contents