gpt4 book ai didi

java - 从 rgb-integer 到字节数组的相互转换不起作用

转载 作者:行者123 更新时间:2023-12-01 05:06:05 24 4
gpt4 key购买 nike

我尝试通过操作 RGB 字节来保存图像中的数据。但每次rgb-byte[]转换回来时返回的值并不相同。使用自己的位移位方法后,我使用了 Java Color 类,但 alpha channel 似乎存在错误。下面的测试方法对于颜色值来说效果很好,但是alpha值每次都不同。

Random r = new Random();
int red = r.nextInt(255), green = r.nextInt(255), blue = r.nextInt(255), alpha = r.nextInt(255);
Color one = new Color(red, green, blue, alpha);
Color two = new Color(one.getRGB());
System.out.println(one.getRed() + " " + one.getGreen() + " " + one.getBlue() + " " + one.getAlpha());
System.out.println(two.getRed() + " " + two.getGreen() + " " + two.getBlue() + " " + two.getAlpha());

我做错了什么或者Java中有错误吗?

最佳答案

单参数Color构造函数忽略alpha。使用两个参数的构造函数:

Color two = new Color(one.getRGB(), true);

关于java - 从 rgb-integer 到字节数组的相互转换不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12644353/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com