JavaFX canvas: Atrybut tekstu ‘text baseline’
Atrybut: text baseline
Typ: VPos
Wartość domyślna: VPos.BASELINE
.
Getter: VPos getTextBaseline()
Setter: void setTextBaseline(VPos)
Save/restore: true
Opis: Pionowe wyrównanie tekstu w stosunku do współrzędnej y
określającej położenie
tekstu. Mamy do wyboru cztery wartości:
- BASELINE – linia przechodząca pod małymi literami np. m, n, o.
- BOTTOM – linia przechodząca tuż pod tekstem, czyli pod literami np. ‘g’.
- CENTER – linia przechodząca przez środek tekstu.
- TOP – linia przechodząca tuż nad tekstem.
Atrybut tekstu ‘text baseline’
Klasa Listing25_50
Ściągnij klasę Listing25_50
package rozdzial25c; import javafx.application.Application; import javafx.application.Platform; import javafx.geometry.VPos; 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.stage.Stage; public class Listing25_50 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(500, 200); GraphicsContext gc = cv.getGraphicsContext2D(); // gc.setFont(Font.font(40)); gc.setTextBaseline(VPos.BASELINE); gc.fillText("Frog", 50, 100); //- gc.setTextBaseline(VPos.BOTTOM); gc.fillText("Frog", 150, 100); //- gc.setTextBaseline(VPos.CENTER); gc.fillText("Frog", 250, 100); //- gc.setTextBaseline(VPos.TOP); gc.fillText("Frog", 350, 100); //- VPos vp = gc.getTextBaseline(); System.out.println(vp); //- gc.beginPath(); gc.strokeLine(10,100, 450, 100); root.getChildren().add(cv); Scene scene = new Scene(root); stage.setScene(scene); stage.setTitle("Atrybut tekstu 'text baseline'"); stage.setOnCloseRequest(e -> Platform.exit()); stage.show(); } catch (Exception e) { e.printStackTrace(); } } }
TOP