我已经在eclipse中上传了我自己的字体,如下所示:
Font buttonFontDefault = Font.loadFont(MenuView.class.getClassLoader().getResourceAsStream("res/font/niagra_eng.TTF"), 100);
它运作得很好。我唯一的问题是,改变文本大小,用这种字体写的按钮和标签的唯一方法是制作一种新的字体,唯一的区别是代码末尾的大小。 我也尝试了以下内容:
button.setScaleX(0.50);
button.setScaleY(0.50);
上面的代码有效,但随后它会破坏我的GridPane布局,因为gridpane根据原始按钮大小进行操作。 我宁愿有一个没有使用css的解决方案,但如果那不可能,那么我猜我别无选择。但为什么不存在没有CSS的解决方案?
到目前为止,我还没能在互联网上找到任何帮助。非常感谢任何帮助。
答案 0 :(得分:1)
如果你想以编程方式处理字体,可以像加载字体时定义字体大小建议的@ItachiUchiha一样:
Font.loadFont(String name, double size)
这种方法的缺点 - 以及以编程方式处理它 - 是对于每种字体大小,您将需要由代码处理的字体实例。
我认为更清洁的解决方案是通过CSS处理字体。从Java 8开始,可以通过CSS定义字体系列:
@font-face {
font-family: 'Roboto';
src: url('Roboto-Medium.ttf');
}
.text {
-fx-font-family: "Roboto";
-fx-font-size: 18px;
}
有关详细示例,请查看此post