正如标题所说,有人知道RGBX_8888像素格式是什么吗?和RGBA_8888有什么区别?RGBA_8888提供的是alpha通道,而RGBX_8888没有吗?
不幸的是,android文档并没有给出太多的信息。
谢谢。
发布于 2015-09-02 08:39:55
RGBX意味着像素格式仍然有一个alpha通道,但是它被忽略,并且总是被设置为255。
一些参考资料:
黑莓PixelFormat (它不是安卓,但我猜不同平台的命名约定是一样的)。
RGBX 32位RGB格式存储在内存中,分为8位红位、8位绿位、8位蓝位和8位忽略位。
Android 4.1.2源代码 (texture.cpp) 80号线
有一个名为PointSample的函数,它根据模板格式和传递的参数对其进行采样。您可以看到,在像素格式RGBX_8888中,alpha通道被忽略并设置为255,而在RGBA_8888,它通常被采样。
if (GGL_PIXEL_FORMAT_RGBA_8888 == format)
*sample = *(data + index);
else if (GGL_PIXEL_FORMAT_RGBX_8888 == format)
{
*sample = *(data + index);
*sample |= 0xff000000;
}https://stackoverflow.com/questions/32348053
复制相似问题