2012-07-23 51 views
-2

哪里可以找到图像信息,如宽度,高度和rgba像素在.png图像中? 我发现用位图图像很容易做到这一点,但PNG图像看起来太复杂了。维基百科也无济于事。 (可能是因为我的英文不好).png图片信息

回答

4

您可能应该使用现有库(例如libpng)为您编写自己的PNG渲染器,而不是编写自己的PNG渲染器。 libpng具有png_get_image_width,png_get_image_heightpng_get_rows等函数分别获取宽度,高度和图像数据。

+0

谢谢你指出,但我想写我自己的图书馆。 – Pilpel 2012-07-23 20:56:36

+2

@Pilpel:你为什么要重新发明轮子?特别是当你已经确定车轮是复杂的? – jamesdlin 2012-07-23 21:00:54

+2

@Ppel:如果你想自己实现一切,你也必须实现zlib/deflate解压,因为PNG总是压缩其有效载荷数据。 – datenwolf 2012-07-23 21:10:06

1

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