📜  JavaFX ColorAdjust效果(1)

📅  最后修改于: 2023-12-03 15:16:03.292000             🧑  作者: Mango

JavaFX ColorAdjust效果

JavaFX中的ColorAdjust效果提供了一种简单的方式来调整图像的颜色,包括亮度、对比度、饱和度和色调。本文将介绍如何使用ColorAdjust效果来实现这些调整。

ColorAdjust基础

ColorAdjust类是JavaFX中的一个效果类,可以通过以下代码创建一个ColorAdjust对象:

ColorAdjust colorAdjust = new ColorAdjust();

ColorAdjust类包含四个属性用于调整颜色:

  • brightness:调整图像的亮度,取值范围为[-1.0, 1.0],0表示原始亮度,1表示最大亮度,-1表示最小亮度。
  • contrast:调整图像的对比度,取值范围为[-1.0, 1.0],0表示原始对比度,1表示最大对比度,-1表示最小对比度。
  • hue:调整图像的色调,取值范围为[-1.0, 1.0],0表示原始色调,1表示增加180度,-1表示减少180度。
  • saturation:调整图像的饱和度,取值范围为[-1.0, 1.0],0表示原始饱和度,1表示最大饱和度,-1表示最小饱和度。

这些属性可以通过setter方法进行调整:

colorAdjust.setBrightness(0.1);
colorAdjust.setContrast(-0.2);
colorAdjust.setHue(0.3);
colorAdjust.setSaturation(0.4);
应用ColorAdjust效果

使用ColorAdjust效果基本上只需要三个步骤:

  1. 创建一个ImageView对象,并设置要显示的图片。
  2. 创建一个ColorAdjust对象,并设置颜色属性。
  3. 把ColorAdjust对象应用到ImageView对象上。

以下是实现的代码片段:

ImageView imageView = new ImageView(image);
ColorAdjust colorAdjust = new ColorAdjust();
colorAdjust.setBrightness(0.1);
colorAdjust.setContrast(-0.2);
colorAdjust.setHue(0.3);
colorAdjust.setSaturation(0.4);
imageView.setEffect(colorAdjust);
总结

ColorAdjust效果提供一种简单的方式来调整图像的颜色,通过设置brightness、contrast、hue和saturation属性,可以实现亮度、对比度、色调和饱和度的调整。简单的应用只需要创建一个ImageView并设置要展示的图片,并把ColorAdjust效果应用到ImageView上即可。