Effets JavaFX - Flou de boîte

En général, Flou signifie devenir flou, en appliquant un effet de flou à un nœud, il devient flou. Box Blur est une sorte d'effet de flou fourni par JavaFX. Dans cet effet, pour appliquer un flou au nœud, un simple filtre de boîte est utilisé.

La classe nommée BoxBlur du forfait javafx.scene.effect représente l'effet BoxBlur, cette classe contient quatre propriétés, qui sont -

  • height - Cette propriété est de type double représentant la taille verticale de l'effet.

  • width - Cette propriété est de type double représentant la taille horizontale de l'effet.

  • input - Cette propriété est du type effet et représente une entrée de l'effet BoxBlur.

  • iterations- Cette propriété est de type entier représentant le nombre d'itérations de l'effet, qui doivent être appliquées sur le nœud. Ceci est fait pour améliorer sa qualité ou sa douceur.

Exemple

Voici un exemple illustrant l'effet de flou de la boîte. Ici, nous dessinons le texte "Welcome to Tutorialspoint" rempli de couleur DARKSEAGREEN et lui appliquons l'effet Box Blur.

Enregistrez ce code dans un fichier avec le nom 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); 
   } 
}

Compilez et exécutez le fichier java enregistré à partir de l'invite de commande à l'aide des commandes suivantes.

javac BoxBlurEffectExample.java 
java BoxBlurEffectExample

Lors de l'exécution, le programme ci-dessus génère une fenêtre JavaFX comme indiqué ci-dessous.