JavaFX 效果 - 框模糊

  • 简述

    一般来说,模糊意味着变得不清晰,在对节点应用模糊效果时,它变得不清晰。Box Blur是JavaFX提供的一种模糊效果。在这种效果中,为了将模糊应用于节点,使用了一个简单的盒式过滤器。
    类名为 BoxBlur 包裹的 javafx.scene.effect 表示 BoxBlur 效果,这个类包含四个属性,它们是 -
    • height − 此属性是表示效果垂直大小的双精度型。
    • width − 此属性是表示效果水平大小的双精度型。
    • input - 此属性属于效果类型,它表示 BoxBlur 效果的输入。
    • iterations− 此属性是一个整数类型,表示将应用于节点的效果迭代次数。这样做是为了提高其质量或平滑度。
  • 例子

    以下是演示框模糊效果的示例。在这里,我们正在绘制文本“Welcome to Tutorialspoint”,填充为 DARKSEAGREEN 颜色并对其应用框模糊效果。
    将此代码保存在名称为的文件中 BoxBlurEffectExample.java.
    
    import javafx.application.Application; 
    import javafx.scene.Group; 
    import javafx.scene.Scene; 
    import javafx.scene.effect.BoxBlur; 
    import javafx.scene.paint.Color; 
    import javafx.stage.Stage; 
    import javafx.scene.text.Font; 
    import javafx.scene.text.FontWeight; 
    import javafx.scene.text.Text; 
             
    public class BoxBlurEffectExample extends Application { 
       @Override 
       public void start(Stage stage) {       
          //Creating a Text object 
          Text text = new Text(); 
          
          //Setting font to the text 
          text.setFont(Font.font(null, FontWeight.BOLD, 40)); 
          
          //setting the position of the text 
          text.setX(60); 
          text.setY(150);         
          
          //Setting the text to be added. 
          text.setText("Welcome to Tutorialspoint");       
          
          //Setting the color of the text 
          text.setFill(Color.DARKSEAGREEN);
          
          //Instantiating the BoxBlur class 
          BoxBlur boxblur = new BoxBlur();      
          
          //Setting the width of the box filter 
          boxblur.setWidth(8.0f);  
          
          //Setting the height of the box filter 
          boxblur.setHeight(3.0f); 
          
          //Setting the no of iterations  
          boxblur.setIterations(3);       
                   
          //Applying BoxBlur effect to the text 
          text.setEffect(boxblur);          
             
          //Creating a Group object  
          Group root = new Group(text);   
                   
          //Creating a scene object 
          Scene scene = new Scene(root, 600, 300);  
          
          //Setting title to the Stage 
          stage.setTitle("Sample Application"); 
             
          //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 BoxBlurEffectExample.java 
    java BoxBlurEffectExample