如何在 JavaFX 中使用文字流向文字新增各種字型?
你可以使用TextFlow佈局在一個流中嵌入多個文字節點。要在單個文字流中使用不同的字型。
建立多個文字節點。
向它們設定所需的字型。
將建立的所有節點新增到文字流。
示例
import java.io.FileNotFoundException; import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.paint.Color; import javafx.stage.Stage; import javafx.scene.text.Font; import javafx.scene.text.FontWeight; import javafx.scene.text.Text; import javafx.scene.text.TextFlow; public class TextFlowExample extends Application { public void start(Stage stage) throws FileNotFoundException { //Creating a text object String str1 = "Hi "; Text text1 = new Text(30.0, 110.0, str1); //Setting the font Font font1 = Font.font("Brush Script MT", FontWeight.BOLD, 75); text1.setFont(font1); //Setting the color of the text text1.setFill(Color.CORAL); text1.setStrokeWidth(1); text1.setStroke(Color.CHOCOLATE); String str2 = "Welcome To"; Text text2 = new Text(40.0, 110.0, str2); Font font2 = Font.font("Verdana", FontWeight.LIGHT, 25); text2.setFont(font2); //Setting the color of the text text2.setFill(Color.YELLOWGREEN); text2.setStrokeWidth(1); text2.setStroke(Color.DARKRED); String str3 = "Tutorialspoint"; Text text3= new Text(50.0, 110.0, str3); Font font3 = Font.font("Kunstler Script", FontWeight.BOLD, 80); text3.setFont(font3); //Setting the color of the text text3.setFill(Color.CORNFLOWERBLUE); text3.setStrokeWidth(1); text3.setStroke(Color.CRIMSON); //Creating the text flow TextFlow textFlow = new TextFlow(); textFlow.getChildren().addAll(text1, text2, text3); //Setting the stage Group root = new Group(textFlow); Scene scene = new Scene(root, 595, 150, Color.BEIGE); stage.setTitle("Text Flow Example"); stage.setScene(scene); stage.show(); } public static void main(String args[]){ launch(args); } }
輸出
廣告