Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ .png图像信息_C++_C_Png_Image - Fatal编程技术网

C++ .png图像信息

C++ .png图像信息,c++,c,png,image,C++,C,Png,Image,在哪里可以找到.png图像中的宽度、高度和rgba像素等图像信息? 我发现使用位图图像很容易,但是png图像看起来太复杂了。维基百科也帮不上忙。(可能是因为我的英语不好)与其编写自己的PNG渲染器,不如使用现有的库(如)为您编写。libpng具有诸如png\u-get\u-image\u-width、png\u-get\u-image\u-height和png\u-get\u-rows等功能,分别获取宽度、高度和图像数据。的.png文件格式比.bmp灵活得多,因此没有固定的位置可以找到宽度和高度

在哪里可以找到.png图像中的宽度、高度和rgba像素等图像信息?
我发现使用位图图像很容易,但是png图像看起来太复杂了。维基百科也帮不上忙。(可能是因为我的英语不好)

与其编写自己的PNG渲染器,不如使用现有的库(如)为您编写。libpng具有诸如
png\u-get\u-image\u-width
png\u-get\u-image\u-height
png\u-get\u-rows
等功能,分别获取宽度、高度和图像数据。

的.png文件格式比.bmp灵活得多,因此没有固定的位置可以找到宽度和高度。更严重的问题是像素值被压缩,必须先解压缩才能使用它们。这几乎可以保证您需要一个库来使用.png文件。

谢谢您指出这一点,但我希望编写自己的库。@Pilpel:为什么要重新发明轮子?特别是当你已经确定轮子很复杂时?@Pilpel:如果你想自己实现所有东西,你还必须实现zlib/deflate解压,因为PNG总是压缩它的负载数据。因为轮子迫使我使用C标准库中的文件读取函数,它有很多我不需要的功能。这可能比从位图文件中读取更复杂,但它仍然是可行的……在看到DatenWalf的评论并看到libpng是png图像的官方库之后,我放弃了尝试如何构建自己的png库。谢谢大家