JavaFX Effects - Bloom

On applying the bloom effect, pixels in some portions of the node are made to glow.

The class named Bloom of the package javafx.scene.effect represents the bloom effect. This class contains two properties, which are −

  • input − This property is of the type Effect and it represents an input to the bloom effect.

  • threshold − This property is of the type double; this represents a threshold value of luminosity of the pixels of the node. All those pixels having luminosity greater than equal to this value are made to glow. The range of the threshold value is 0.0 to 1.0.


Following is an example demonstrating the bloom effect. We will be drawing a text “Welcome to Tutorialspoint” and applying the bloom effect to it with a threshold value 1.0.

Save this code in a file with the name

import javafx.application.Application; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.scene.effect.Bloom; 
import javafx.scene.paint.Color; 
import javafx.scene.shape.Rectangle; 
import javafx.stage.Stage; 
import javafx.scene.text.Font; 
import javafx.scene.text.FontWeight; 
import javafx.scene.text.Text; 
public class BloomEffectExample extends Application { 
   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  
      //Setting the text to be embedded. 
      text.setText("Welcome to Tutorialspoint");       
      //Setting the color of the text 
      //Instantiating the Rectangle class 
      Rectangle rectangle = new Rectangle(); 
      //Setting the position of the rectangle 
      //Setting the width of the rectangle 
      //Setting the height of the rectangle 
      //Setting the color of the rectangle 
      //Instantiating the Bloom class 
      Bloom bloom = new Bloom(); 
      //setting threshold for bloom 
      //Applying bloom effect to text 
      //Creating a Group object  
      Group root = new Group(rectangle, 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 
      //Displaying the contents of the stage;         
   public static void main(String args[]){ 

Compile and execute the saved java file from the command prompt using the following commands.

java BloomEffectExample

On executing, the above program generates a JavaFX window as shown below.

Bloom Effect