一、PNG++库
PNG++旨在为libpng(PNG参考实现库)提供简单而强大的C ++接口。PNG ++是根据BSD 许可证的修改变体分发的免费软件。
使用C ++中的原始libpng可能会引起严重的挑战,因为必须采取许多预防措施来处理控制结构的初始化/初始化以及正确处理错误。使用png ++,您可以在单行C ++代码中读取或写入PNG图像:
png :: image <png :: rgb_pixel> image(“input.png”);
image.write(“output.png”);
代码从名为的文件读取图像"input.png",然后将图像写入名为的文件"output.png"。在这个例子中,png ++执行了创建足够的内存中RGB图像所需的所有转换(在大多数情况下,它只是指示libpng这样做)。
二、Windows下编译zlib和libpng库
开始的时候,走了很多弯路,查找了很多资料进行编译,然后就根据教程直接编译了,但编译完zlib库之后,出来的是静态库zlibstat.lib和动态库zlibwapi.dll/zlibwapi.lib,不是单独就一个zlib.lib,所以我就感觉有点怪怪的,而且还花费了好长的时间去编译。在下篇博客中,我会分享编译zlib库的详细步骤,但是我没有继续编译libpng库,所以没有进行测试,请见谅。好了,开始今天的重点吧,这个方法是测试了的,可以使用,也将会贴