== PngOptimizer Changelog ==-----------------2012-09-09 (2.2)- new: support of the ".apng" file extension- fixed: only lower case file extensions were managed. The extension case is notrelevant anymore.-----------------2012-06-09 (2.1)- new: option to keep or force pixel physical dimensions (pHYs chunk)- new: better compatibility for old Windows versions (NT based)- new: Windows Seven taskbar icon now shows progression of an optimization- new: better automatic dialogs placement when near screen borders, near taskbaror with multiple monitors- new: the list is now scrollable with the keyboard- new: "Done" written at the end of multiple files optimization- new: screenshot directory dialog can be resized-----------------2011-04-25 (2.0)- new: support for APNG for both optimization and conversion (animated GIFs)- new: x64 version- new: PNG options moved to their own dialog window- new: option to ignore animated GIFs- new: option to keep original file date and time- new: option to force background color (bkGD chunk)- new: option to keep or force textual information (tEXt chunk)- new: always on top option for the main window in the contextual menu- new: suggested screenshot filename now keeps leading "0" for file number (file001.png, file 002.png...)- new: suggested screenshot filename now accepts "-" as a number separator(file-01.png file-02.png...)- change: AvoidGreyWithSimpleTransparency is now disabled by default (was forIE6 compatibility)- change: keyboard shortcut to clear the list is slightly less complicated:Ctrl+Delete instead of Ctrl+Shift+Delete- misc: better results with some cases of indexed color images- misc: updated ZLib 1.2.3 to 1.2.5 (compression library)- fixed: bad % reported for large files- fixed: hangs at startup when loading an empty configuration file(PngOptimizer.ini)- fixed: could not load GIFs containing non-Netscape application extensionsblocks (like XMP data from Photoshop CS)- fixed: could not load GIFs with a compressed block ending with a terminator instead of an end-of-information code-----------------2009-12-13 (1.9)Internal version-----------------2008-11-02 (1.8)- new: uses Windows XP and Windows Vista theme on those platforms- new: uses a lot less memory when optimizing
- new: when asking for a screenshot file name: does not select the .png part ofthe file name- new: when asking for a screenshot file name: proposes a new file name based onthe previous file name- corrected: freezes on Windows Vista- corrected: better anti-aliased text in the list-----------------2008-09-11 (1.7)Private release by Paul Higginbottom-----------------2007-04-22 (1.6.1)- corrected : more robust clipboard code to avoid crash whith strange bitmapdata (MSN messenger, again)-----------------2007-04-16 (1.6)- new: optimization engine improved- new: dump of a clean copy of the source PNG file if the compression cannot beimproved- new: directories accepted for drag-and-drop (with recursive optimization)- new: TGA files accepted- new: more BMP formats accepted- new: added an option to optimize screenshots- new: added an option to ask for the file name of a screenshot- new: settings stored in a configuration file instead of the registry- corrected: bug for 32 bits images converted to palette images that containedmore than one fully transparent color- corrected: could not load 24 bits BMP with a colorcount set to 16777216(expected 0 for the colorcount)- corrected: bug when decoding a transparent GIF with a local palette- corrected: screenshot drag-and-drop could not be done to some applications- corrected: PngOptimizer was complaining when the source file was read-onlyeven when a new file was created- corrected: no blocking anymore when optimizing files given through the commandline- internal: use of the chustd framework instead of the dkstd- internal: improved software architecture- misc: PngOptimizer is now Open Source software- misc: dropped support for Windows 98/Me-----------------2006-01-09 (1.5.4 aka 1.54)- uneeded bKGD chunk inserted when the « Keep background color » option was set.-----------------2006-01-07 (1.5.3 aka 1.53)- Use of critical section to avoid potential conflict between the user interfaceand the working thread.- Corrected 24 bits & 32 bits BMP decoding errors.- Support for 16 bits BMPs.- "Clear" option in the context menu to clear the list.- Better previous window positionning :
- When PngOptimizer was minimized then closed, the window was unreachable atrelaunch. - When other instances of PngOptimizer are running, the window is nowoffseted respectively to the previous instance window.-----------------2005-11-20 (1.5.2 aka 1.52)- Use of the latest zlib (v1.2.3 ; 2005-07-18) instead of the zlib++ based onv1.1.4- Further compression for 24 bits images : Checking size without filtering : slower optimization but improves file size(no more +50% increase)- Further compression for 32 bits images : Checking size without filtering (same method than for 24 bits images). A 32 bits image which could be converted to a 24 bits image was then storedto the disk. Now PngOptimizer feeds the 24 bits image to the 24 bits optimizer (which canlead to a palette image).- Improved general compression by changing the ZLib compression strategy : Filtered images are stored with the Z_FILTERED strategy, otherwiseZ_DEFAULT_STRATEGY is used. For 32 bits images, both strategy are used and compared, as Z_FILTERED doesnot always give the best results for 32 bits filtered pictures.- Warning when converting animated GIF2005-08-15 (1.5.1 aka 1.51)- BMP decoder crash with 32 bits BMPs- Crashed when a fake bitmap was stored in the clipboard : IsClipboardFormatAvailable(CF_BITMAP) returned true,GetClipboardData(CF_BITMAP) returned NULL Case found when copying & pasting MSN Messenger smileys-----------------2005-03-11 (1.5)- Full Unicode support (except for PngOptimizerCL).- Corrected two memory leaks when decoding BMP and GIF files.- Added an option to keep the background color (bKGD). Please note that thebackground color is not kept with indexed (palette mode) pictures. This option only works withtrue-color or grey pictures.- PngOptimizer remembers the last window position and size.- The main text window has been enhanced. Printing is faster in some cases. Youcan now scroll inside with the keyboard and the mouse wheel. The scrolling position is notlost anymore when you resize the window.- For the first time in PngOptimizer history, introducing multithreading :) Youcan now move the interface while PngOptimizer is working.- Support for compressed BMP added.
- Support for bitmap stored in the clipboard. Primary used for screenshots, butcan be used for any bitmap stored in the clipboard. .:: More Info 1) Take a screenshot with the "Print Screen" key or Alt+"Print Screen" for thecurrent window only. 2) Press Ctrl+V or Shift+Insert in the PngOptimizer window, or right-click inPngOptimizer and choose "Paste screenshot" 3) PngOptimizer creates a PNG file from your screenshot, and prints thefilename in its window. 4) You can drag the file name out of the PngOptimizer window in anyapplication which accepts dragged files. 5) You can also double-click on the file name to display your picture in yourfavorite picture viewer. By default, those files are stored in your Temp directory in your Windowsprofile. For example : C:Documents and SettingsYourNameLocal SettingsTemp In Windows 98, the default storage location is located in the global Tempdirectory. For example : C:WINDOWSTEMP You can change the storage location : Right click in PngOptimizer and select "Change screenshots directory". A dialog box will allow you to select the screenshots location. You can view the content of the screenshots directory by right-clicking in thePngOptimizer window and choose "Show screenshots directory". Those PNG files are compressed with a medium ratio (zlib compression 6), inorder to reduce the creation time. If you want to reduce the size a bit more, you can dragthem from a file explorer to the PngOptimizer window. .:: Even More Info About dragging operations. The dragging result can be either a move or a copy of the screenshot file. The dragging behaviour is the same you are used to in Windows. For example, ifyou drag the file out of PngOptimizer to a file manager window, in the same partition than thescreenshot directory, this will result in a move. To force a copy, press the Control key during the dragging. To force a move, press the Shift key during the dragging. As usual in Windows, the mouse cursor will show a "+" symbol if the draggingwill result in a copy. No "+" appears if the dragging will result in a move. If the result of the dragging is a move, the link in the PngOptimizer is
disabled, and its color changes.- Support for command line filenames. .:: More Info It means you can select several files in the file explorer and drag them tothe PngOptimizer executable file. You can also create a PngOptimizer shortcut into your «SendTo » folder. Then you select several files in the file explorer and send them to PngOptimizer.- A new icon provided by Guillaume Schaeffer.-----------------2004-07-12 (1.4)- Unicode support (for filenames and the log window). .:: More Info PngOptimizer uses the same font than the file explorer. To display correctlyUnicode strings in both Windows and PngOptimizer, set the icon font to a complete unicode font, suchas "Arial Unicode MS". Note that Windows 95/98/Me do not support Unicode filenames, so I had to addcompatibility routines to deal with ANSI strings instead.- A new icon :)- Stability improvement when loading corrupted GIFs.- Support for 32 bits BMPs.- Better management of grayscale mode PNGs.- New compression strategy. PngOptimizer now also checks compression with thepalette sorted according to the number of color occurrences. It also checks the compressionresult with and without adaptive filtering. The optimization can be now a little moreslower but the compression should be better. .:: More Info Adaptive filtering is a way of reordering byte values in PNGs in order toimprove the compression. But sometimes the compression library performs better without this reordering.- I also created a Command Line version of PngOptimizer. Its calledPngOptimizerCL. Here are the arguments : For one file : PngOptimizerCL -file:"my file cool picture.png" You can use wildcards to specify several files at once : PngOptimizerCL -file:"Some Folder/*.png" The options have the same meanings than the GUI version. Here you are : -BackupOldPngFiles -KeepInterlacing
-AvoidGreyWithSimpleTransparency Example : PngOptimizerCL -file:"my-logo.png" -KeepInterlacing -BackupOldPngFiles Note : the options set in the GUI version DO NOT impact on the Command Lineversion. This behaviour is by design. Note : you will get some information if you call PngOptimizerCL without anyparameter.-----------------2003-12-04 (1.3.2)- Public release with the MMX bug correction.-----------------2003-12-03 (1.3.1)- Private release for F. Constantineau. Corrected a crash on CPUs without MMXsupport.-----------------2003-11-12 (1.3)- Added support for interlaced PNG files.- Added an option to keep or remove interlacing for interlaced PNG files.- New compression strategies. .:: More Info For palettized images, the palette is now sorted according to colorluminances. This sometimes increases compression, like for fadings. In some cases thiscould decrease compression of some bytes in comparison with the older version. In some cases, PngOptimizer will now perform the conversion with severalparameters to get the best compression method. This may slow down the optimization insomes cases but will lead to better results.-----------------2003-03-21 (1.2)- Gif transparency was not correctly detected when color 0 was used fortransparency- Optimization for 32 bits png : * if all alpha values are 100%, the alpha channel is discarded * if all alpha values are 100%, but one color has an alpha of 0%, thealpha channel is discarded and the image is saved as RGB + simple transparency- Optimization for 24 bits images : * if 256 or less different colors are used in the image, and if the imageis big enough, the image is converted to palette mode. The image is declared big enough if (pixelcount * 3) >= (pixelcount +colcount * 3 + 12). Example : an image of 256 pixels with 256 different colors is kept in 24bits.-----------------2002-08-27 (1.1)
- Improved support for black & white pictures- The settings are now read and stored in the registry- Added new option : "Avoid grey + simple transparency (IE Bug)" .:: Explanation : Internet Explorer does not support greyscaled images with simple transparency,but it supports palettized images with simple transparency. This option tells PngOptimizer toavoid conversion from palettized images into greyscale ones if simple transparency is used. .:: More Info : * for greyscale images, simple transparency means one grey index has an alphavalue of 0% (completely transparent), while the other indexes have an alpha of 100%(fully opaque). * for palettized images, it means that for each palette entry an alpha valueis assigned. * for true color images it means one color value has an alpha of 0%, while theothers have an alpha of 100%. .:: Even More Info : Simple transparency is managed through a PNG chunk called tRNS-----------------2002-08-08 (1.0)- First release