Gab*_*lla 25 java image colors
我有从get.rgb(x,y)获得的整数像素,但我没有任何关于如何将其转换为RGBA的线索.例如,-16726016应为Color(0,200,0,255).有小费吗?
AKX*_*AKX 44
如果我猜对了,你得到的是表格的无符号整数0xAARRGGBB,所以
int b = (argb)&0xFF;
int g = (argb>>8)&0xFF;
int r = (argb>>16)&0xFF;
int a = (argb>>24)&0xFF;
Run Code Online (Sandbox Code Playgroud)
会提取颜色成分.但是,快速浏览文档说你可以做到
Color c = new Color(argb);
Run Code Online (Sandbox Code Playgroud)
要么
Color c = new Color(argb, true);
Run Code Online (Sandbox Code Playgroud)
如果你想要Color中的alpha组件.
UPDATE
红色和蓝色组件在原始答案中颠倒,因此正确的答案将是:
int r = (argb>>16)&0xFF;
int g = (argb>>8)&0xFF;
int b = (argb>>0)&0xFF;
Run Code Online (Sandbox Code Playgroud)
在第一段代码中也更新了
lah*_*her 24
Color c = new Color(-16726016, true);
System.out.println(c.getRed());
System.out.println(c.getGreen());
System.out.println(c.getBlue());
System.out.println(c.getAlpha());
Run Code Online (Sandbox Code Playgroud)
打印出来:
0
200
0
255
Run Code Online (Sandbox Code Playgroud)
你是这个意思吗?
| 归档时间: |
|
| 查看次数: |
49851 次 |
| 最近记录: |