Java:将java.awt.Color转换为javafx.scene.paint.Color

时间:2015-05-26 18:41:25

标签: java javafx awt

我怎样才能相互融合?我想通过rgb字符串的方式,但这种情况下alpha层被忽略。那么问题 - 如何用alpha转换为另一个?

1 个答案:

答案 0 :(得分:11)

从awt Color对象获取每个组件并使用javafx.scene.paint.Color.rgb(...)静态方法。请注意,awt Color具有getAlpha()方法,该方法在int范围内返回0-255的alpha值,而javafx.scene.paint.Color.rgb(...)则将alpha值视为double0.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);