Currently I have a ray-tracing program that produces RGB values in floating point (from 0 to 1) or short
values (from 0 to 255). (The relevant code is in ImageTools.cpp and ImageTools.hpp.)
Currently I can produce images by writing PPM, which is horrendously large and bloated.
How can I write a PNG image from one of these arrays?
I prefer not to add a dependency on anything that's not commonly installed on most Linux systems, as I have 0 dependencies so far.