Rotation du texte JavaFX

Sheeraz Gul 15 février 2024
Rotation du texte JavaFX

Les nœuds de texte peuvent être créés à l’aide de la classe JavaFX.scene.text.Text, et pour faire pivoter le texte, nous utilisons setRotate() dans JavaFX. Ce tutoriel montre comment faire pivoter du texte dans JavaFX.

Rotation du texte JavaFX

La méthode setRotate() est utilisée dans JavaFX pour faire pivoter le texte. Les nœuds de texte sont placés sur la scène et seront tournés autour des positions x et y.

Ces positions x et y sont passées dans le texte lors de l’instanciation de la classe Text.

Syntaxe:

text.setRotate(int);

Le int dans la syntaxe ci-dessus est la valeur de rotation du texte. Voici les étapes pour faire pivoter le texte dans JavaFX.

  • Créez une classe qui étend la classe Application.
  • Définissez le titre sur la scène dans la méthode start.
  • Créez un groupe en instanciant la classe Group.
  • Créez une scène en instanciant la classe Scene et en lui passant le Group.
  • Initialisez le x, le y et le RGB avec les valeurs données.
  • Créez le texte en instanciant la classe Text et en transmettant les valeurs x, y et Text.
  • Remplissez la couleur du texte par la méthode SetFill().
  • Définissez le degré de rotation à l’aide de la méthode setRotate().
  • Ajoutez le text au group.
  • Passez la scène à la scène et affichez la scène par la méthode Show et lancez l’application dans la méthode main.

Essayons d’implémenter un exemple basé sur les étapes ci-dessus.

Code source complet :

package delftstack;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class JavaFX_TextRotate extends Application {
  @Override
  public void start(Stage Demo_Stage) {
    Demo_Stage.setTitle("Text");
    Group Group_Root = new Group();
    Scene Demo_Scene = new Scene(Group_Root, 300, 250, Color.WHITE);
    int x = 150;
    int y = 150;
    int RED = 30;
    int GREEN = 40;
    int BLUE = 50;

    Text Demo_Text = new Text(x, y, "Delftstack");

    Demo_Text.setFill(Color.rgb(RED, GREEN, BLUE, .99));
    Demo_Text.setRotate(45);
    Group_Root.getChildren().add(Demo_Text);

    Demo_Stage.setScene(Demo_Scene);
    Demo_Stage.show();
  }
  public static void main(String[] args) {
    Application.launch(args);
  }
}

Le code ci-dessus fera pivoter le texte à 45 degrés.

Production:

JavaFX Faire pivoter le texte

Voici un autre exemple qui fait pivoter les multiples textes en fonction des positions aléatoires x et y et des degrés de rotation aléatoires.

Exemple de code :

package delftstack;

import java.util.Random;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class JavaFX_Rotate extends Application {
  @Override
  public void start(Stage Demo_Stage) {
    Demo_Stage.setTitle("TEXT");
    Group Group_Root = new Group();
    Scene Demo_Scene = new Scene(Group_Root, 300, 250, Color.WHITE);
    Random Random_Number = new Random(System.currentTimeMillis());
    for (int i = 0; i < 100; i++) {
      int x = Random_Number.nextInt((int) Demo_Scene.getWidth());
      int y = Random_Number.nextInt((int) Demo_Scene.getHeight());
      int RED = Random_Number.nextInt(255);
      int GREEN = Random_Number.nextInt(255);
      int BLUE = Random_Number.nextInt(255);

      Text Demo_Text = new Text(x, y, "Delftstack");

      int Rotation = Random_Number.nextInt(180);
      Demo_Text.setFill(Color.rgb(RED, GREEN, BLUE, .99));
      Demo_Text.setRotate(Rotation);
      Group_Root.getChildren().add(Demo_Text);
    }

    Demo_Stage.setScene(Demo_Scene);
    Demo_Stage.show();
  }

  public static void main(String[] args) {
    Application.launch(args);
  }
}

Le code ci-dessus fera pivoter plusieurs textes en utilisant le x, y, RGB et le degré de rotation aléatoires.

Production:

JavaFX Faire pivoter les textes

Auteur: Sheeraz Gul
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

Article connexe - Java JavaFX