Zielony Smok

JavaFX canvas: Atrybut tekstu ‘text align’

Atrybut: text align

Typ: TextAlignment

Wartość domyślna: TextAlignment.LEFT.

Getter: TextAlignment getTextAlign()

Setter: void setTextAlign(TextAlignment)

Save/restore: true

Opis: Poziome wyrównanie tekstu w stosunku do współrzędnej x określającej położenie
tekstu. Mamy do wyboru cztery wartości: LEFT (linia z lewej), RIGHT (linia z prawej), CENTER (linia w środku) i JUSTIFY. W tym przypadku LEFT i JUSTIFY oznaczają takie samo położenie tekstu.

Atrybut tekstu ‘text align’

Klasa Listing25_49

Ściągnij klasę Listing25_49

package rozdzial25c;

import javafx.application.Application;
import javafx.application.Platform;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.TextAlignment;
import javafx.stage.Stage;

public class Listing25_49 extends Application {

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

    @Override
    public void start(Stage stage) {
        try {
            Group root = new Group();
            Canvas cv = new Canvas(600, 500);
            GraphicsContext gc = cv.getGraphicsContext2D();
            //
            gc.setTextAlign(TextAlignment.LEFT);
            gc.fillText("Aria i Suita z Terierogrodu", 300, 100);
            //-
            gc.setTextAlign(TextAlignment.CENTER);
            gc.fillText("Aria i Suita z Terierogrodu", 300, 200);
            //
            gc.setTextAlign(TextAlignment.JUSTIFY);
            gc.fillText("Aria i Suita z Terierogrodu", 300, 300);
            //-
            gc.setTextAlign(TextAlignment.RIGHT);
            gc.fillText("Aria i Suita z Terierogrodu", 300, 400);
            //-
            gc.beginPath();
            gc.strokeLine(300, 10, 300, 490);
            //-
            TextAlignment ta = gc.getTextAlign();
            System.out.println(ta);
            //-
            root.getChildren().add(cv);
            Scene scene = new Scene(root);
            stage.setScene(scene);
            stage.setTitle("Atrybut tekstu 'text align'");
            stage.setOnCloseRequest(e -> Platform.exit());
            stage.show();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
RIGHT
Atrybut tekstu 'text align'
Rys. 25_55. Atrybut tekstu ‘text align'”