有没有用过c++ freeimage的朋友 在这里问一个问题:
在读取png图像的时候,有的png是有alpha通道的(rgba),有的png就是rgb,想知道如何用freeimage准确判断是否包含alpha通道?
因为我用FreeImage_GetColorType之类的一些函数,发现返回的结果很多时候并不正确....
FreeImage_GetBPP() 返回每个像素用多少个bit,RGB就是24bit,RGBA就是32bit,相当于一个通道8bit。
FreeImage_GetBPP()
如果要全面考虑,用 FreeImage_GetImageType() 获取类型,有一些少见的图片类型不是标准的 FIT_BITMAP,比如 FIT_FLOAT,因为float用32bit,所以当bpp=32的时候才有1个通道。
FreeImage_GetImageType()
FreeImage_GetBPP()
返回每个像素用多少个bit,RGB就是24bit,RGBA就是32bit,相当于一个通道8bit。如果要全面考虑,用
FreeImage_GetImageType()
获取类型,有一些少见的图片类型不是标准的FIT_BITMAP,比如 FIT_FLOAT,因为float用32bit,所以当bpp=32的时候才有1个通道。