我怎样才能相互融合?我想通过rgb字符串的方式,但这种情况下alpha层被忽略。那么问题 - 如何用alpha转换为另一个?
答案 0 :(得分:11)
从awt Color对象获取每个组件并使用javafx.scene.paint.Color.rgb(...)
静态方法。请注意,awt Color具有getAlpha()
方法,该方法在int
范围内返回0-255
的alpha值,而javafx.scene.paint.Color.rgb(...)
则将alpha值视为double
在0.0-1.0
范围内:
java.awt.Color awtColor = ... ;
int r = awtColor.getRed();
int g = awtColor.getGreen();
int b = awtColor.getBlue();
int a = awtColor.getAlpha();
double opacity = a / 255.0 ;
javafx.scene.paint.Color fxColor = javafx.scene.paint.Color.rgb(r, g, b, opacity);