该文档提到了 CGBitmapContextGetBitsPerPixel()。我几乎可以肯定我只需要把它除以 8 就可以了。

但由于我没有学过计算机科学,所以我对细节感到困惑。如果它是 8 位 PNG 或 24 位 PNG,会有什么不同吗?或者其他PNG?

因此,为了安全地获取 CGContextRef 每个像素的字节数,我是否只需除以 8 即可?

有帮助吗?

解决方案

每个像素的位数不一定是 8 的倍数。有时使用 15 位,黑白图像也使用 1 位。因此,如果您想找到保存单个像素值所需的最小字节数,请除以 8 并向上舍入。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top