JavaFX 中的文本原点是什么?
javaobject oriented programmingprogramming更新于 2025/10/12 11:24:17
除了用于定位其节点的本地坐标系之外,JavaFX 还为文本节点提供了额外的坐标系。
textOrigin 属性指定文本节点在父坐标系中的坐标原点。您可以使用 setTextOrigin() 方法设置此属性的值。此方法接受名为 VPos 的枚举常量之一。此枚举包含 4 个常量,即:BASELINE、BOTTOM、CENTER 和 TOP。
示例
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.util.Scanner;
import javafx.application.Application;
import javafx.geometry.VPos;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.scene.text.Text;
public class TextOriginExample extends Application {
public void start(Stage stage) throws FileNotFoundException {
//读取文本文件的内容。
InputStream inputStream = new FileInputStream("D:\sample_text.txt");
Scanner sc = new Scanner(inputStream);
StringBuffer sb = new StringBuffer();
while(sc.hasNext()) {
sb.append(" "+sc.nextLine()+"\n");
}
//创建文本对象
Text text = new Text(10.0, 25.0, sb.toString());
//换行
text.setWrappingWidth(565);
//设置垂直定位
text.setTextOrigin(VPos.TOP);
//设置舞台
Group root = new Group(text);
Scene scene = new Scene(root, 595, 150, Color.BEIGE);
stage.setTitle("Text Origin (TOP)");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
sample.txt
假设以下是sample.txt文件的内容 −
Tutorials Point originated from the idea that there exists a class of readers who respond better to online content and prefer to learn new skills at their own pace from the comforts of their drawing rooms. The journey commenced with a single tutorial on HTML in 2006 and elated by the response it generated, we worked our way to adding fresh tutorials to our repository which now proudly flaunts a wealth of tutorials and allied articles on topics ranging from programming languages to web designing to academics and much more.
输出

同样,如果您更改对齐值,您将获得相应的输出,即 −
BASELINE −

BOTTOM −

CENTER −

相关文章
有用资源
java 参考教程 - 该教程包含有关 java 的更多信息:https://www.cainiaomax.com/java/

