JavaFX 混合效果2024 年 8 月 29 日 | 阅读 3 分钟 通常,混合效果产生的结果是混合两个或多个不同输入节点的结果。它获取两个或多个节点的像素,根据应用的混合模式混合它们,并在相同位置产生输出节点。 如果两个图像相互重叠,则混合模式应用于两个图像的重叠区域。 性质该类包含四个属性,这些属性及其 setter 方法在下表中描述。 属性 | 描述 | 设置器方法 |
---|
bottomInput | 混合操作的底部输入。 这是一个对象类型属性。 | setBottomInput(Effect value) | mode | 输入混合在一起的模式。 | setMode(BlendMode value) | opacity | 这是双精度类型的 opacity 值。 | setOpacity(double value) | topInput | 混合操作的顶部输入。 | setTopInput(Effect Value) |
构造函数此类中有三个构造函数。 - Blend() : 使用默认值实例化 Blend 类。
- Blend(BlendMode mode): 使用指定的模式实例化 Blend 类
- Blend(BlendMode mode, Effect BottomInput, Effect TopInput): 使用指定的混合模式、底部输入效果和顶部输入效果实例化 Blend 类
示例
 混合模式JavaFX 提供了各种混合模式,可以应用这些模式来修改混合效果。 混合模式 | 描述 | 输出 |
---|
添加 | 顶部输入的颜色分量被添加到底部输入的颜色分量中。 |  | 蓝色 | 只有底部输入的蓝色分量被顶部输入的蓝色分量替换。 |  | COLOR_BURN | 底部输入颜色被反转,并除以顶部输入颜色分量。 然后再次反转结果以获得输出颜色。 |  | COLOR_DODGE | 顶部颜色分量被反转,并将底部颜色分量除以产生输出颜色。 |  | DARKEN | 选择两种输入分量颜色中较暗的颜色以产生结果颜色。 |  | 差集 | 从较浅的颜色中减去两种输入颜色中较暗的颜色以产生结果颜色。 |  | EXCLUSION | 两个输入颜色分量相乘并加倍,然后从底部颜色分量之和中减去以产生所需的颜色。 |  | GREEN | 底部输入的绿色分量被顶部输入的绿色输入替换。 |  | HARD_LIGHT | 输入颜色分量根据底部颜色进行相乘或滤色。 |  | LIGHTEN | 两种颜色分量中较浅的颜色作为输出产生。 |  | MULTIPLY | 两个颜色分量相乘产生输出颜色。 |  | OVERLAY | 输入颜色分量根据底部颜色进行滤色或相乘。 |  | RED | 底部输入的红色分量被顶部输入的红色分量替换。 |  | SCREEN | 两个颜色分量被反转、相乘并再次反转以产生所需的结果。 |  | SOFT_LIGHT | 输入颜色分量变亮或变暗。 |  | SRC_ATOP | 顶部输入中位于底部输入之上的部分被混合。 |  | SRC_OVER | 顶部输入混合在底部输入之上。 |  |
|