0

当我让 javafx 使用如下代码加载字体时:

font = Font.loadFont(getClass().getClassLoader().getResource("gui/font.ttf").toExternalForm(), 25);

并且,在它成功加载后,将它应用到一个 Text

text.setFont(font);

文本显示正确的字体但是,当我尝试对其应用一些样式或权重时

text.setStyle("-fx-font-weight: bold;");

或者

text.setStyle("-fx-font-style: italic;");

没有什么变化。即使使用 SceneBuilder,我也尝试过,但它也不起作用。我该怎么做才能让 java 加载我的字体以及所有样式和权重(或者至少让它尝试派生它们)?

编辑:使用的字体:Peque Script(我知道,5 分钟前它没有在维护中) 网上找到的一些其他字体,如thisthis

4

1 回答 1

0

我尝试了一个随机的并且正在工作,我认为这是由于您使用的字体,它可能没有重量,您使用的是什么字体?(无法评论)。

编辑:我做了一些研究,我发现“.tff”文件中只有一个(个人/联合)样式,即使它是一个丰富的文件。如果以“consolas”字体为例,有 4 种类型(Normal/Italic/Bold/Bold-Italic),这些类型一起使用,但在单独的文件中。我希望这回答了你的问题。

于 2016-11-21T17:55:59.307 回答