If you're using freepascal, fcl-image has a png reader