JavaFX的PixelWriter的ByteBuffer以这种方式解释字节。
使用if语句并在数据类型之间进行转换似乎有点长,但到目前为止,这是我最好的想法。
我目前将每个像素的颜色存储在3个字节中,使用时,输出正确的颜色。但是因为我只是在通过函数后才输出它们,所以它们可以以任何格式开始,只要将它们乘以1.0就会返回正确的颜色。
所有的浮点数都是<= 1.0,并且答案四舍五入的方式并不重要。
一些例子:
0xFF * 0.5 == 0x40
0x80 * 0.9 == 0x99
答案 0 :(得分:0)
您可以从b
获取所需的值:
b = (b & 0x80) != 0 ? 0xff-(b & ~0x80) : 0;
然后相乘。