JavaFX 效果 - 颜色调整

  • 简述

    您可以通过对图像应用颜色调整效果来调整图像的颜色。这包括调整Hue, Saturation, BrightnessContrast 在每个像素上。
    类名为 ColorAdjust 包裹的 javafx.scene.effect 表示颜色调整效果,该类包含五个属性,即 -
    • input − 此属性属于效果类型,表示颜色调整效果的输入。
    • brightness − 此属性为 Double 类型,表示此效果的亮度调整值。
    • contrast − 此属性为 Double 类型,表示此效果的对比度调整值。
    • hue − 此属性为 Double 类型,表示此效果的色调调整值。
    • saturation − 此属性为 Double 类型,表示此效果的饱和度调整值。
  • 例子

    以下程序是演示颜色调整效果的示例。在这里,我们使用在 JavaFX 场景中嵌入图像(Tutorialspoint Logo)ImageImageView类。这是在位置 100 和 70 处完成的,并且适合高度和适合宽度分别为 200 和 400。
    图像视图
    我们正在使用颜色调整效果调整此图像的颜色。和contrast, hue, brightness and saturation值为 0.4。-0.05、0.9、0.8。
    将此代码保存在名称为的文件中 ColorAdjustEffectExample.java.
    
    import javafx.application.Application; 
    import javafx.scene.Group; 
    import javafx.scene.Scene; 
    import javafx.scene.effect.ColorAdjust; 
    import javafx.scene.image.Image; 
    import javafx.scene.image.ImageView; 
    import javafx.stage.Stage; 
             
    public class ColorAdjustEffectExample extends Application {   
       @Override 
       public void start(Stage stage) {       
          //Creating an image 
          Image image = new Image("http://www.jc2182.com/green/images/logo.png");
          
          //Setting the image view 
          ImageView imageView = new ImageView(image); 
          
          //Setting the position of the image 
          imageView.setX(100);  
          imageView.setY(70); 
          
          //setting the fit height and width of the image view 
          imageView.setFitHeight(200); 
          imageView.setFitWidth(400); 
          
          //Setting the preserve ratio of the image view 
          imageView.setPreserveRatio(true); 
        
          //Instantiating the ColorAdjust class 
          ColorAdjust colorAdjust = new ColorAdjust(); 
          
          //Setting the contrast value 
          colorAdjust.setContrast(0.4);     
          
          //Setting the hue value 
          colorAdjust.setHue(-0.05);     
          
          //Setting the brightness value 
          colorAdjust.setBrightness(0.9);  
          
          //Setting the saturation value 
          colorAdjust.setSaturation(0.8);   
           
          //Applying coloradjust effect to the ImageView node 
          imageView.setEffect(colorAdjust);    
             
          //Creating a Group object  
          Group root = new Group(imageView);   
                   
          //Creating a scene object 
          Scene scene = new Scene(root, 600, 300);  
          
          //Setting title to the Stage 
          stage.setTitle("Coloradjust effect example");
          
          //Adding scene to the stage 
          stage.setScene(scene); 
             
          //Displaying the contents of the stage 
          stage.show();         
       } 
       public static void main(String args[]){ 
          launch(args); 
       } 
    }      
    
    使用以下命令从命令提示符编译并执行保存的 java 文件。
    
    javac ColorAdjustEffectExample.java 
    java ColorAdjustEffectExample