JavaFX | BoxBlur类

BoxBlur类是JavaFX的一部分。BoxBlur使用简单的长方体过滤器来模糊节点。BoxBlur用于在JavaFX中实现模糊。一个模糊效果,使用一个简单的盒子过滤器内核,在两个维度上都有可单独配置的大小,以及一个控制结果模糊质量的迭代参数。

null

BoxBlur类有三个组件:

  1. 身高: 效果的垂直维度。
  2. 宽度: 效果的水平维度。
  3. 迭代: 模糊效果的迭代次数。

类的构造函数:

  1. BoxBlur() :创建BoxBlur的新对象。
  2. BoxBlur(双w,双h,整数i) :创建具有指定宽度、高度和迭代次数的新BoxBlur对象。

常用方法:

方法 解释
getHeight() 返回效果的垂直维度
getWidth() 返回效果的水平维度
getIterations() 返回效果的迭代次数
getInput() 获取属性输入的值。
设置输入(效果v) 设置属性输入的值。
设置高度(双v) 设置效果的垂直尺寸
设置宽度(双v) 设置效果的水平尺寸
集合迭代(int i) 设置效果的迭代次数

以下程序说明了BoxBlur类的使用:

  1. 用于导入图像并向其添加框模糊效果的Java程序: 在这个节目中 文件输入流类 创建并从文件中获取图像作为输入。图像名为 形象 使用文件输入流中的输入创建。从图片上看,一个 图像视图对象 创建并将其添加到 VBox 。然后将VBox添加到场景,并将场景添加到舞台。使用作为参数传递的指定级别创建BoxBlur效果,并使用 setEffect() 作用

    // Java program to import an image and
    // add Box Blur effect to it
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.scene.image.*;
    import javafx.scene.effect.*;
    import java.io.*;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.scene.Group;
    public class box_blur_1 extends Application {
    // launch the application
    public void start(Stage stage) throws Exception
    {
    // set title for the stage
    stage.setTitle( "BoxBlur Example" );
    // create a input stream
    FileInputStream input = new FileInputStream( "D:\GFG.png" );
    // create a image
    Image image = new Image(input);
    // create a image View
    ImageView imageview = new ImageView(image);
    // create a box blur effect
    BoxBlur box_blur = new BoxBlur();
    // set effect
    imageview.setEffect(box_blur);
    // create a VBox
    VBox vbox = new VBox(imageview);
    // create a scene
    Scene scene = new Scene(vbox, 200 , 200 );
    // set the scene
    stage.setScene(scene);
    stage.show();
    }
    // Main Method
    public static void main(String args[])
    {
    // launch the application
    launch(args);
    }
    }

    
    

    输入图像:

    图片[1]-JavaFX | BoxBlur类-yiteyi-C++库

    输出:

    图片[2]-JavaFX | BoxBlur类-yiteyi-C++库

  2. Java程序,用于导入图像和模糊效果,并在两个维度上分别配置大小和迭代参数: 在这个节目中 文件输入流类 创建并从文件中获取图像作为输入。图像名为 形象 使用来自文件输入流的输入创建。从图片上看,一个 图像视图对象 创建并将其添加到 VBox 。然后将VBox添加到场景,并将场景添加到舞台。使用作为参数传递的指定级别创建BoxBlur效果,并使用 setEffect() 作用效果的宽度、高度和迭代次数是使用 设置高度() , setWidth() setIterations() 分别起作用。

    // Java program to import an image and blur effect
    // to it with separately configurable sizes in both
    // dimensions, and an iteration parameter
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.scene.image.*;
    import javafx.scene.effect.*;
    import java.io.*;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.scene.Group;
    public class box_blur_2 extends Application {
    // launch the application
    public void start(Stage stage) throws Exception
    {
    // set title for the stage
    stage.setTitle( "BoxBlur Example" );
    // create a input stream
    FileInputStream input = new FileInputStream( "D:\GFG.png" );
    // create a image
    Image image = new Image(input);
    // create a image View
    ImageView imageview = new ImageView(image);
    // create a box blur effect
    BoxBlur box_blur = new BoxBlur();
    // set width
    box_blur.setWidth( 10 .0f);
    // set height
    box_blur.setHeight( 10 .0f);
    // set Iterations
    box_blur.setIterations( 3 );
    // set effect
    imageview.setEffect(box_blur);
    // create a VBox
    VBox vbox = new VBox(imageview);
    // create a scene
    Scene scene = new Scene(vbox, 200 , 200 );
    // set the scene
    stage.setScene(scene);
    stage.show();
    }
    // Main Method
    public static void main(String args[])
    {
    // launch the application
    launch(args);
    }
    }

    
    

    输入图像:

    图片[1]-JavaFX | BoxBlur类-yiteyi-C++库

    输出:

    图片[4]-JavaFX | BoxBlur类-yiteyi-C++库

注: 上述程序可能无法在联机IDE中运行。请使用脱机编译器。

参考: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/effect/BoxBlur.html

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享