The PNG Guide is an eBook based on Greg Roelofs' book, originally published by O'Reilly.


In this section I list some of the books, web pages, and other references relevant to each chapter.

Chapter 1

Portable Network Graphics (PNG) home site

Roelofs, Greg, This site includes the PNG specification (all versions), the PNG extensions document, sample images, historical information, an extensive list of known PNG-supporting plications, programming information (including a link to the demonstration source code presented in Part III), and even a VRML97 test world.

``Not Just Decoration: Quality Graphics for the Web''

Lilley, Chris, In particular, see the sections on ``Anti-aliasing and Transparency'' (, ``Gamma Correction'' (, ``Colour Display'' (

``PNG and Gamma''

Lilley, Chris,

``PNG and Chromaticity''

Lilley, Chris,

``PNG and Color Management''

Lilley, Chris,

International Color Consortium home page The ICC is responsible for the standard ``device profile'' format that allows one to describe the characteristics of display devices very precisely.

sRGB web site

Hewlett-Packard Company,

IEC Technical Committee 100 home page

International Electrotechnical Commission, This is the committee overseeing the standardization of sRGB.

``JPEG--What's New''

Elysium, Ltd., This site contains news and information about JPEG-LS, among other things.

HP Labs LOCO-I/JPEG-LS home page

Hewlett-Packard Company,

``Waterloo BragZone''

Kominek, John,

BitJazz home page

16million.png This is the 113 KB lossless image containing all 16.8 million possible colors in the 24-bit RGB spectrum.

``Win98 Explorer buffer-size bug'' When Windows 98's Explorer is set to View → as Web Page, it will crash when certain PNG images with large chunk sizes are clicked on, apparently due to a 4 KB buffer limitation in Explorer. This problem first showed up with the intermediate PNG files produced by Fireworks 1.0.

Chapter 2

``Unable to View .png Images with Internet Explorer 4.0''

Microsoft Corp., This is the Knowledge Base article that reports that IE 4.0 cannot be used to view standalone PNG images (that is, when a PNG file is double-clicked in Explorer), despite being able to view PNG images on web pages.

``Zeus Server--Webmaster guide: MIME types''

Zeus Technology,

``Apache Content Negotiation''

Apache Group,

``Content Negotiation Explained''

Apache Week, issue 25, July 26, 1996,

Chapter 5

libtiff home page

Welles, Mike, Sam Leffler's original libtiff repository is still available at , but he no longer maintains the library.

Chapter 6

VRML97, ISO/IEC 14772-1:1997

Chapter 7

``The GIF Controversy: A Software Developer's Perspective''

Battilana, Michael C.,

Thomas Boutell's home page

Boutell, Thomas,

``MNG-supporting Applications''

Roelofs, Greg,

The Data Compression Book, Second Edition

Nelson, Mark, and Jean-loup Gailly, M&T Books, New York, 1996.

``PNG Graphics Specification as Basis for GIF24''

CompuServe, Feb. 14, 1995,

``Paleo PNGs''

Randers-Pehrson, Glenn,

``Jonathan Swift-Gulliver's Travels-Dictionary-B''

Jaffe, Lee, The source of ``big-endian'' and ``little-endian'' computer jargon explained.

VRML97, ISO/IEC 14772-1:1997; Conformance and minimum support requirements

RFC 2083: ``PNG (Portable Network Graphics) Specification, Version 1.0''

Boutell, Thomas, et al.,

PNG (Portable Network Graphics) Specification, Version 1.0

Boutell, Thomas, et al., This is the ``W3C Recommendation 01-October-1996.''

PNG (Portable Network Graphics) Specification, Version 1.2

Randers-Pehrson, Glenn, et al., This link will always be updated to point at the latest version of the PNG specification. See also for pointers to other versions and formats for the specification (plain text, PostScript, etc.).

MNG (Multiple-image Network Graphics) Format, Version 1.0

Randers-Pehrson, Glenn, This link will always be updated to point at the latest version of the MNG specification. See also for pointers to other formats for the specification (plain text, PostScript, etc.).

Chapter 8

``Colour in Computer Graphics: Student Notes''

Lilley, C., F. Lin, W. T. Hewitt, and T. L. J. Howard, Manchester Computing Centre and Department of Computer Science, University of Manchester, In particular, see Chapter 2, "Applications: WWW Browsers and Servers" and Chapter 3, "Applications: Image Viewers". Follow the freely available link to the student notes and six color-plate links in the ``Lecture course'' section.

``The JPEG Still Picture Compression Standard''

Wallace, Gregory K.,

Encyclopedia of Graphics File Formats, Second Edition

Murray, James D., and William vanRyper, O'Reilly and Associates, 1996.

See also the Chapter 5 entry for the libtiff home page.

Chapter 9

Lossless Compression Handbook

Sayood, Khalid (ed.), Academic Press/Elsevier Science, 2003.

``zlib Technical Details''

Adler, Mark and Jean-loup Gailly,

``Source Code''

Colosseum Builders, This is the location for an independent PNG and zlib implementation in C++, by John Miano.

The Programmer's Guide to Compressed Image Files

Miano, John, ACM Press/Addison Wesley Longman, 1999.

International Telecommunication Union (ITU) home page

``JPEG Related Links''

Elysium, Ltd., This page contains links to various JPEG and FAQ lists, information about JPEG 2000 and JPEG-LS, software, and so forth.

``JPEG-LS Public Domain Code''

Signal Processing and Multimedia Group, Department of Electrical and Computer Engineering, University of British Columbia,

See also the Chapter 1 entries for the HP Labs LOCO-I/JPEG-LS home page and the ``Waterloo BragZone.''

Chapter 10

``Color Technology''

Poynton, Charles,

A Technical Introduction to Digital Video

Poynton, Charles, John Wiley & Sons, 1996,

``The colour gamut of a sample monitor (an HP A1097C)''

Lilley, Chris, This is the chromaticity diagram used in Figures 10-1 and C-2.

International Commission on Illumination (CIE) home page

``ICC Profile Specifications''

International Color Consortium,

``Color-related stuff--icclib''

Gill, Graeme, This page provides source code to a library capable of reading, writing, and doing color conversion on ICC profiles.

See also the Chapter 1 entries for additional links on gamma, chromaticity, color management, sRGB and the International Color Consortium home page, and see the Chapter 8 entry for "Colour in Computer Graphics: Student Notes."

Chapter 11

RFC 822: ``Standard for the Format of ARPA Internet Text Messages''

Crocker, David H., et al., August 13, 1982, This standard, as amended by RFC 1123 below, includes the date format recommended for use in PNG's Creation Time text chunk.

RFC 1123: ``Requirements for Internet Hosts -- Application and Support''

Braden, R. (editor), October 1989,

``HTTP Specifications and Drafts''

World Wide Web Consortium, These standards define the official URL format recommended for use in PNG's unofficial URL text chunk.

RFC 1766: ``Tags for the Identification of Languages''

Alvestrand, Harald, March 1995,

Assigned Language Tags

Internet Assigned Numbers Authority, This ftp directory contains all of the RFC 1766-format language tags registered to date (not counting those that were implicitly registered by RFC 1766 itself). See the file tags for a brief summary.

RFC 2279: ``UTF-8, a Transformation Format of ISO 10646''

Yergeau, François, January 1998,

Unicode Consortium home page

The Unicode Standard, Version 2.0

Unicode Consortium, Addison Wesley, 1996,

``Introduction to Widescreen: Aspect Ratios''

Killian, E.,

``Graphics Interchange Format(sm), Version 89a''

CompuServe, 1990,

Chapter 12

Multiple-image Network Graphics (MNG) home site

Roelofs, Greg, This site includes pointers to the full MNG specification, a list of all known MNG-supporting applications, and related information and images. Glenn Randers-Pehrson is a major contributor of material.


Independent JPEG Group, Source code for the current libjpeg release as of this writing, version 6b, is in the archive jpegsrc.v6b.tar.gz. The directory also contains plain text and PostScript versions of the JFIF 1.02 specification.

Independent JPEG Group home page

See also the Chapter 7 entry for the MNG (Multiple-image Network Graphics) Format, Version 1.0.

Chapter 13

``PNG Source Code and Libraries''

Roelofs, Greg, This page lists all known PNG-supporting libraries and applications for which source code is freely available. It includes direct links to the libpng ( and zlib ( home pages.

zlib home site

Gailly, Jean-loup, and Greg Roelofs, This is the official home for zlib, by Jean-loup Gailly and Mark Adler. Please contact them for anything regarding zlib.

``A Standard Default Color Space for the Internet--sRGB, Version 1.10''

Stokes, Michael, Matthew Anderson, Srinivasan Chandrasekar, and Ricardo Motta, November 1996, .

Chapter 15

``NetPBM (PBMPLUS) Toolkit'' There is no official NetPBM home page yet, but the Graphics and Visualization Laboratory's site is a very good substitute.

RFC 1345: ``Character Mnemonics and Character Sets''

Simonsen, Keld, June 1992, This document provides mappings for a large assortment of 1-byte character sets.

Character Maps

Simonsen, Keld, This is a directory of 1-byte character sets and is probably more complete than RFC 1345. The parent directory contains still more information on international character sets.

``Representation of ISO 8859-1 characters with 7-bit ASCII''

Kuhn, Markus, February 20, 1993,

Chapter 16

See also the Chapter 9 entry for The Programmer's Guide to Compressed Image Files.

Last Update: 2010-Nov-26