PNG Reference Library: libpng

PNG Web Site


This is an open source project to develop and maintain the reference library for use in applications that read, create, and manipulate PNG (Portable Network Graphics) raster image files.

UPDATE 28 July 2015:

  • The latest released versions are libpng-1.5.23 and libpng-1.6.18 [DOWNLOAD].

  • HOWEVER, due to the extended outage (since July 16th) at SourceForge, the File Release System is currently read-only and we are unable to upload the libpng-1.5.23 and 1.6.18 tar distributions. Fortunately for all of us, according to the SourceForge site status blog, "Knowledge capture has been continuous throughout this outage and will drive continuous improvement." Current sources for libpng-1.5.23 and 1.6.18 are available via the GIT repositories.

  • For legacy applications, libpng-1.4.16, libpng-1.2.53, and libpng-1.0.63 are also available and will only be updated if necessary for security reasons.

UPDATE 23 July 2015: The latest development version is libpng-1.7.0beta63 [DOWNLOAD]. libpng17 has 8-bit compose and rgb_to_grayscale accuracy improvements, and a new "affirm" (similar to "assert()") bug reporting system.

The primary web site for PNG is

The primary public ftp site for libpng is

The ftp site for beta versions of libpng is

The current public and beta versions of libpng are available at

UPDATE 28 July 2015: The current public releases can also be downloaded directly from github, by using "wget" as illustrated below, or by selecting the link in your browser:

or you can access these files using normal "git" directives in the master branch of the "glennrp/libpng-releases" repository.

There are pointers to various distributions of libpng and MD5 checksums here.

The Sourceforge project page for libpng is at

A "git" repository for libpng is available. You can access it by cloning git:// or you can browse it at or at At present, there are eight branches (libpng00, libpng10, libpng12, libpng14, libpng15, libpng16, libpng17, and a "master" branch which is roughly equivalent to the "libpng16" branch). Development occurs in the "libpng16" and "libpng17" branches; parts of the new developments are also ported to the "libpng15" branch; the rest are just for legacy and security purposes.

A "doxygen" index for various releases is available at

A "compatibility analysis" of libpng releases through 1.6.18beta09 is available at (service discontinued July 21, 2015).

The Coverity project for libpng is at The project is set up to scan the head of each of the libpng10 through libpng17 branches (libpng00 is not included). As of July 23, 2015, libpng-1.0.63, libpng-1.2.53, libpng-1.4.16beta02, libpng-1.5.23, libpng-1.6.18, and libpng-1.7.0beta63 were all reported to be defect-free).

The mailing list for libpng developers and developers of libpng-based applications is png-mng-implement (at) Visit to subscribe. (archived here)

Bug reports can be sent to the mailing list or submitted via the SourceForge Bug tracker (select the "Create Ticket" button).

Feel free to download and use the official PNG logo (size 88x31) with your application documentation and web pages:

pngbar.png pngbar.png pngbar.jpg pngbar.jpg
Both pngbar.tar.gz Both

This site belongs to the PNG Development Group and is maintained for the group by Glenn Randers-Pehrson glennrp at

Web space for this project is being provided by