I'm not so sure it needs to be configurable. Looking at the PngEncoder source code, plus the PNG spec, it looks like the Strings ('IHDR', 'IDAT' and 'IEND') ought to be converted to bytes using the ISO-8859-1 encoding, not any other encoding:

The PNG-Encoder with encoding "ISO-8859-1" are working correct on the windows and zOS platform. Performance is okay.

The next problem on zOS is the font. The SansSerif-font doesn't exist on zOS. So I must use the Lucida Sans Regular. Could you implement a method to set the default font for all Charts?

Example: In class ChartUtilities a static variable defaultFontName, a static setter and a getter-method. By default the default font is SansSerif and I can use ChartUtilities.setDefaultFontName("Lucida Sans Regular");

Paulo Soares has provided a patch for the PngEncoder that does away with the need for the encoding - it simply writes the correct byte values to the PNG file. This will be incorporated in the upcoming 0.9.13 release.

Regarding the default font, I will implement this when I get a chance...it's been added to the Feature Request Database (id=812410) so I don't forget about it.