TweakPNG is a low-level utility for examining and modifying PNG image files.
The current version requires Windows 2000 or higher (XP, Vista, etc.),
though it is possible to build a copy that runs on Windows 95/98/ME.
In order to use it, you will need to be at least somewhat familiar with
the internal format of PNG files. For information about PNG, see the
PNG home page.
A screenshot of TweakPNG:
To download TweakPNG, save the following link:
tweakpng-1.4.5.zip (about 450K)
26 Dec 2012
You can also view the README file.
Development is hosted at
To install it, extract the files in the ZIP file to a location of your
choice (e.g. C:\Program Files\).
To run it, open either x86\tweakpng.exe, or,
if you’re using an x64 64-bit edition of Windows,
TweakPNG is free software, distributed under the terms of the
GNU General Public License (GPL) version 3.
The C++ source code for TweakPNG is included the zip file.
v1.4.5 (26 Dec 2012) (download):
- Fixes and improvements related to compressed text.
- Changed the viewer’s background color options.
v1.4.4 (24 Aug 2012) (download):
- Improved support for ICC profiles.
- Improved viewer’s image quality for images with partial transparency.
v1.4.3 (6 Mar 2012) (download):
v1.4.2 (9 Aug 2011) (download):
- Rewrote the viewer’s PNG decoder. Slightly more accurate
- Updated to libpng 1.5.4.
v1.4.1 (9 Jan 2011) (download):
- Support for 64-bit builds.
- Support for sCAL chunks.
- Allow drag/drop onto viewer window.
- Minor changes to shortcut keys, icons, etc.
- Updated to libpng 1.5.0.
v1.4.0 (5 Jun 2010) (download):
- Full support for oFFs, acTL, fcTL chunks.
- Support for filters (tools that modify the PNG file).
- Added "Close" and "Reopen" menu items.
- Changed the ZIP file structure slightly; now includes a directory name.
- Updated to libpng 1.4.2 and zlib 1.2.5.
v1.3.2 (22 Aug 2009) (download):
- Fixed bugs when restoring the position of auxiliary windows.
- Fixed the context menu position when using multiple monitors.
- Updated to libpng 1.2.39.
v1.3.1 (7 Dec 2008) (download):
- Full support for sTER chunks.
- Read-only support for APNG chunks.
- Less likely to crash if you attempt to edit an incorrectly-sized chunk.
- Updated to libpng 1.2.33.
v1.3.0 (16 Nov 2008) (download):
- Support for iTXt chunks.
- Updated the binary to use the latest versions of zlib and libpng.
- The binary is now a Unicode application.
- For now at least, the package that I’m distributing does not include a
binary that runs on Windows 95/98/ME. The only reason for this is that the
compiler I used is not capable of creating such binaries.
- Modified the source code to conditionally support Unicode.
- Modified the source code to use "strsafe" string functions.
- Lots of other cleanup of the source code.
- Fixed a couple of small bugs. But more than likely introduced more new
bugs than were fixed, due to the aforementioned source code changes.
- Changed license from GPLv2 to GPLv3.
v1.2.1 (11 Dec 2004) (download):
- Updated the binary to use the latest versions of zlib (1.2.2)
and libpng (1.2.8).
- Two or three very small improvements and fixes.
v1.2.0 (29 Dec 2003):
- Added an image viewer (Tools->Show Image Viewer). This makes
use of another project of mine, PNGDIB.
- Palette editor now used for selecting grayscale background
and transparent colors.
- A few other minor changes.
v1.1.2 (24 Nov 2003):
- Option to add TweakPNG to Windows Explorer context menus.
- Warns when you try to exit without saving changes.
- Compiles cleanly in MSVC6.
v1.1.1 (3 Jan 2001):
- Fixed problem with writing wrong CRC after editing IHDR chunk.
v1.1.0 (28 Dec 2000):
- Palette editing, including bKGD and tRNS chunks
for paletted images.
- Persistent window sizes and column widths, and
persistent position of text chunk editor and palette editor.
- Rearranged some menus
- Edit IHDR chunk (not much reason to do this though...)
- Context menu
- "Combine all IDAT" function
- Fixed some bugs here and there...
v1.0.1 (27 Dec 1999):
- A few minor bugfixes;
more graceful handling of most
invalid files; automatic validation on Save; uses standard color picker
when appropriate (but usually it’s not)
v1.0.0 (3 Dec 1999):
TweakPNG was written by Jason Summers. You may send
comments and questions about TweakPNG to