Java: Hiệu ứng nhập ảnh (ImageInput)
Giải phóng thời gian, khai phóng năng lực
Hiệu ứng nhập ảnh trong JavaFX chỉ nhúng một hình ảnh vào màn hình JavaFX. Cũng giống như trong hiệu ứng ColorInput, nó được sử dụng để truyền vùng hình chữ nhật có màu được chỉ định làm đầu vào cho một hiệu ứng khác. Hiệu ứng nhập ảnh được sử dụng để truyền hình ảnh được chỉ định làm đầu vào cho một hiệu ứng khác.
Khi áp dụng hiệu ứng này, hình ảnh được chỉ định sẽ không bị sửa đổi. Hiệu ứng này được áp dụng cho bất kỳ nút nào.
Lớp có tên ImageInput của gói javafx.scene.effect đại diện cho hiệu ứng nhập ảnh, lớp này chứa ba thuộc tính, đó là:
-
x - Thuộc tính này thuộc loại Double; nó đại diện cho tọa độ x của vị trí của hình ảnh nguồn.
-
y - Thuộc tính này thuộc loại Double; nó đại diện cho tọa độ y của vị trí của hình ảnh nguồn.
-
nguồn - tài sản của anh ta thuộc loại Hình ảnh; nó đại diện cho hình ảnh được sử dụng làm nguồn cho hiệu ứng này. (Được chuyển làm đầu vào)
Thí dụ
Chương trình sau đây là một ví dụ minh họa hiệu ứng đầu vào Hình ảnh. Ở đây, chúng tôi đang tạo một đầu vào hình ảnh ở vị trí 150, 100 và lấy hình ảnh sau (logo điểm hướng dẫn) làm nguồn cho hiệu ứng này.
Ta se tạo một hình chữ nhật và áp dụng hiệu ứng này cho nó. Lưu mã này trong một tệp có tên ImageInputEffectExample.java .
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.effect.ImageInput; import javafx.scene.image.Image; import javafx.scene.shape.Rectangle; import javafx.stage.Stage; public class ImageInputEffectExample extends Application { @Override public void start(Stage stage) { //Creating an image Image image = new Image("https://v1study.com/public/images/logo_v1study_xin_111_30.png"); //Instantiating the Rectangle class Rectangle rectangle = new Rectangle(); //Instantiating the ImageInput class ImageInput imageInput = new ImageInput(); //Setting the position of the image imageInput.setX(150); imageInput.setY(100); //Setting source for image input imageInput.setSource(image); //Applying image input effect to the rectangle node rectangle.setEffect(imageInput); //Creating a Group object Group root = new Group(rectangle); //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); } }
Biên dịch và thực thi tệp java đã lưu từ dấu nhắc lệnh bằng các lệnh sau:
javac ImageInputEffectExample.java java ImageInputEffectExample
Khi thực thi, chương trình trên tạo ra một cửa sổ JavaFX như hình dưới đây.
Giải phóng thời gian, khai phóng năng lực