gpt4 book ai didi

java - 如何在 JavaFX 中设置字体的字母间距(又名跟踪)?

转载 作者:行者123 更新时间:2023-12-01 22:19:27 26 4
gpt4 key购买 nike

互联网告诉我它可以在 JavaFX 1.x 中使用(我发现的大多数示例都是 .fx 格式,该格式现已过时)。但现在(JavaFX 2.*)似乎不可能做到。我可以想到一种方法来实现我想要的效果:将每个字母填充到 Text 中,然后使用 HGap 将它们全部添加到 FlowPane 中> 设置为所需的间距。但我宁愿将此作为最后的手段。哦,我也尝试过将 -fx-letter-spacing 放入样式表中,但也不起作用。

最佳答案

我制作了一个适合我的需求的自定义类(警告:没有很多功能)

public class LetterSpacedText extends FlowPane {
private Font font;
private Color fill;

public LetterSpacedText(String s, double spacing) {
setText(s);
setHgap(spacing);
}

public void setText(String s) {
getChildren().clear();
for (int i = 0; i < s.length(); i++) {
getChildren().add(new Text("" + s.charAt(i)));
}
setFont(this.font);
setFill(this.fill);
}

public void setFont(Font font) {
if (font != null) {
this.font = font;
for (Node t : getChildren()) {
((Text) t).setFont(font);
}
}
}

public void setFill(Color fill) {
if(fill != null) {
this.fill = fill;
for (Node t : getChildren()) {
((Text) t).setFill(fill);
}
}
}
}

关于java - 如何在 JavaFX 中设置字体的字母间距(又名跟踪)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30220679/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com