Java 不同类型的BuffereImage意味着什么?
BuffereImage的文档非常。。。简洁Java 不同类型的BuffereImage意味着什么?,java,bufferedimage,Java,Bufferedimage,BuffereImage的文档非常。。。简洁 不同的类型意味着什么?当我为类型\u INT\u ARGB调用getPixel()时,我得到了什么?当类型为type\u 3BYTE\u BGR时,它与我得到的有什么不同?其他类型呢?TYPE\u INT\u ARGB使用整数保存像素的颜色,如 int color = 0xAARRGGBB, 但3BYTE_BGR使用 byte[] color = new byte[Blue, Green, Red] 我建议使用INT_ARGB,您可以使用alph
不同的类型意味着什么?当我为
类型\u INT\u ARGB
调用getPixel()时,我得到了什么?当类型为type\u 3BYTE\u BGR
时,它与我得到的有什么不同?其他类型呢?TYPE\u INT\u ARGB使用整数保存像素的颜色,如
int color = 0xAARRGGBB,
但3BYTE_BGR使用
byte[] color = new byte[Blue, Green, Red]
我建议使用INT_ARGB,您可以使用alpha,在3字节中没有通道alpha。整数比字节数组更快,而且容易获得任何颜色,例如:
(COLOR >> 16) & 0xFF; (24-16 bits are RED).
(COLOR >> 8) & 0xFF; (16- 8 bits are GREEN).
(COLOR >> 0) & 0xFF; ( 8- 0 bits are BLUE).
我总是使用INT\u ARGB或INT\u RGB(如果我不需要alpha)TYPE\u INT\u ARGB使用整数保存像素的颜色,如
int color = 0xAARRGGBB,
但3BYTE_BGR使用
byte[] color = new byte[Blue, Green, Red]
我建议使用INT_ARGB,您可以使用alpha,在3字节中没有通道alpha。整数比字节数组更快,而且容易获得任何颜色,例如:
(COLOR >> 16) & 0xFF; (24-16 bits are RED).
(COLOR >> 8) & 0xFF; (16- 8 bits are GREEN).
(COLOR >> 0) & 0xFF; ( 8- 0 bits are BLUE).
我总是使用INT_ARGB或INT_RGB(如果我不需要alpha)类型表示像素颜色类型 与类型_INT_ARGB一样,ALPHA分量使用8位,红色分量使用8位,绿色分量使用8位,蓝色分量使用8位。因此,像素颜色可以存储在
int
值中
类型_3BYTE_BGR不存储颜色的ALPHA分量。它只使用3个字节的int
值
与类型_USHORT_555_一样,RGB对颜色的每个红色、绿色和蓝色分量使用5位。由于它只使用5位,因此它的颜色数量将比类型\ INT \ u ARGB或类型\ u 3BYTE \ u BGR有限
ALPHA组件表示图像的透明度
同样,其他类型定义不同的颜色方案。类型表示像素颜色类型 与类型_INT_ARGB一样,ALPHA分量使用8位,红色分量使用8位,绿色分量使用8位,蓝色分量使用8位。因此,像素颜色可以存储在
int
值中
类型_3BYTE_BGR不存储颜色的ALPHA分量。它只使用3个字节的int
值
与类型_USHORT_555_一样,RGB对颜色的每个红色、绿色和蓝色分量使用5位。由于它只使用5位,因此它的颜色数量将比类型\ INT \ u ARGB或类型\ u 3BYTE \ u BGR有限
ALPHA组件表示图像的透明度
同样,其他类型定义了不同的配色方案。您是如何知道这一点的?其他类型呢?另外,
getPixel()
返回一个int[]
数组。这如何与TYPE_3BYTE_BGR
配合使用?getPixel()
映射值,还是每个字节都有一个int
?你怎么知道的?其他类型呢?另外,getPixel()
返回一个int[]
数组。这如何与TYPE_3BYTE_BGR
配合使用?getPixel()
映射值,还是每个字节都有一个int
?