JavaFX 效果

2024 年 8 月 29 日 | 阅读 3 分钟

效果基本上是可以改善图形外观的操作。 JavaFX 提供了一个名为 javafx.scene.effect 的包,其中包含各种类,可用于将效果应用于 UI 图形组件,如图像和形状。下表列出了效果及其描述。

序号效果描述
1ColorAdjust (颜色调整)此效果通过改变色调、饱和度、亮度、对比度等属性来调整节点的颜色。 javafx.scene.effect.ColorAdjust 类处理与节点颜色调整相关的所有内容。
2ColorInput (颜色输入)javafx.scene.ColorInput 类表示 ColorInput 效果。 它创建一个彩色的矩形。 如果应用于节点,则会显示一个矩形框。
3ImageInput (图像输入)ImageInput 效果用于将图像绑定到场景。 它基本上是将指定的图像传递给某种效果。
4Blend (混合)javafx.scene.effect.Blend 类表示混合效果。 这种效果将两个输入的像素连接起来,并在同一位置产生组合输出。 类中定义了各种混合模式,可以改变输出外观。
5Bloomjavafx.scene.effect.Bloom 类表示 Bloom 效果。 这种效果使组件的某些部分的像素发光。
6Glow (发光)这种效果与 Bloom 非常相似。 它可以增强亮像素的亮度,使输入图像发光。
7BoxBlur (盒状模糊)模糊使图像不清晰。 JavaFX 提供了 javafx.scene.effect.BoxBlur 类,需要实例化该类才能将模糊效果应用于节点。 在 JavaFX 中的 BoxBlur 效果中使用 Box 滤波器。
8GaussionBlur (高斯模糊)在 JavaFX 中,GaussionBlur 用于模糊节点。 这个类为此目的使用高斯卷积核。
9MotionBlur (运动模糊)MotionBlur 效果用于使节点模糊。 通过应用此效果,节点看起来好像在运动中一样模糊。 javafx.scene.effect.MotionBlur 类表示此效果。
10反射它将节点的反射添加到节点的底部。 名为 javafx.scene.effect.Reflection 的类表示 Reflection 效果。
11SepiaTone (棕褐色调)SapiaTone 效果使节点带有红棕色的色调。 名为 javafx.scene.effect.SepiaTone 的类表示 SapiaTone 效果。 生成的节点类似于古董照片。
12阴影这将复制具有模糊边缘的节点。 名为 javafx.scene.effect.Shadow 的类表示 Shadow 效果。
13DropShadow (阴影)这是一种高级效果,用于在原始内容后面显示具有指定颜色和大小的重复内容。
14InnerShadow (内阴影)这种效果在应用它的节点的边缘内显示阴影。
15照明此效果用于从光源照亮节点。 此效果由 javafx.scene.effect.Lighting 类表示。
16Light.Distant (远距离光)它从远距离光源在节点上实现照明。 它由 Light.Distant 类表示。
17Light.Spot (聚光灯)它从聚光灯在节点上实现照明。 它由 Light.Spot 类表示。
18Light.Point (点光源)它从点光源在节点上实现照明。 它由 Light.Point 类表示。

如何将效果应用于节点

JavaFX 提供了一个名为 setEffect() 的方法,需要通过节点对象调用它。 我们需要将效果类对象传递到此方法中。 要将任何效果应用于节点,我们需要遵循以下步骤。

  1. 创建节点
  2. 创建要应用于节点的相应效果类的对象。
  3. 设置效果的属性。
  4. 通过节点对象调用 setEffect() 方法,并将效果类对象传递到其中。