Effetti JavaFX - SepiaTone
Applicando l'Effetto Seppia a un nodo in JavaFX (immagine in generale), viene tonificato con un colore bruno-rossastro.
La classe denominata SepiaTone del pacchetto javafx.scene.effect rappresenta l'effetto seppia, questa classe contiene due proprietà, che sono:
level- Questa proprietà è di tipo doppio che rappresenta l'intensità di questo effetto. L'intervallo di questa proprietà è compreso tra 0,0 e 1,0.
input - Questa proprietà è del tipo effetto e rappresenta un ingresso per l'effetto seppia.
Esempio
Il seguente programma è un esempio che mostra l'effetto seppia di JavaFX. Qui, stiamo incorporando la seguente immagine (logo tutorialspoint) nella scena JavaFX usandoImage e ImageViewclassi. Questo viene fatto nella posizione 100, 70 insieme all'altezza di adattamento e alla larghezza di adattamento 200 e 400 rispettivamente.
A questa immagine, stiamo applicando l'effetto Seppia con il valore di livello 0.9. Salva questo codice in un file con nomeSepiaToneEffectExample.java.
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.effect.SepiaTone;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.stage.Stage;
public class SepiaToneEffectExample extends Application {
@Override
public void start(Stage stage) {
//Creating an image
Image image = new Image("http://www.tutorialspoint.com/images/tp-logo.gif");
//Setting the image view
ImageView imageView = new ImageView(image);
//Setting the position of the image
imageView.setX(150);
imageView.setY(0);
//setting the fit height and width of the image view
imageView.setFitHeight(300);
imageView.setFitWidth(400);
//Setting the preserve ratio of the image view
imageView.setPreserveRatio(true);
//Instanting the SepiaTone class
SepiaTone sepiaTone = new SepiaTone();
//Setting the level of the effect
sepiaTone.setLevel(0.8);
//Applying SepiaTone effect to the image
imageView.setEffect(sepiaTone);
//Creating a Group object
Group root = new Group(imageView);
//Creating a scene object
Scene scene = new Scene(root, 600, 300);
//Setting title to the Stage
stage.setTitle("Sepia tone effect example");
//Adding scene to the stage
stage.setScene(scene);
//Displaying the contents of the stage
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
Compilare ed eseguire il file java salvato dal prompt dei comandi utilizzando i seguenti comandi.
javac SepiaToneEffectExample.java
java SepiaToneEffectExample
All'esecuzione, il programma di cui sopra genera una finestra JavaFX come mostrato di seguito.