【发布时间】:2018-03-21 16:38:05
【问题描述】:
我正在尝试在屏幕外预渲染一些 Text 元素以检索它们的宽度,然后再在屏幕上渲染它们:
Group offScreenRoot = new Group();
Scene offScreen = new Scene(offScreenRoot, 1024, 768);
Set<Text> textSet = new HashSet<>();
Text textText = new Text(getText());
textSet.add(textText);
Text idText = new Text(getId());
textSet.add(idText);
for (String s : getStrings()) {
textSet.add(new Text(s));
}
for (Text text : textSet) {
text.setStyle("-fx-font-size: 48;"); // <- HERE!
text.applyCss();
offScreenRoot.getChildren().add(text);
}
for (Text text : textSet) {
System.out.println(text.getLayoutBounds().getWidth());
}
我正在通过 CSS 应用较大的字体大小,但这没有得到采纳。相反,Text 尽可能宽,以默认字体大小呈现(我猜)。
有没有办法在屏幕外渲染Text 并根据 CSS 字体大小获取实际宽度值?
【问题讨论】:
标签: css javafx javafx-8 rendering off-screen