2016-11-21 65 views
0

当我做的JavaFX加载字体,像这样的代码:的JavaFX忽略的重量和风格来自定义字体

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

,并已成功加载后,将其应用到文本

text.setFont(font); 

文本显示正确的字体,但,当我尝试应用到它的一些风格或重量类似

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

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

没有什么变化。 即使使用SceneBuilder,我也尝试过,它也不适用。 我能做些什么来使java加载我的字体与所有样式和权重(或者,至少,使它试图派生它们)?

编辑:使用源泉:Peque Script(我知道,5分钟前,这是不是在维护)网上找到 一些其他字体一样thisthis

回答

0

我试图用一个随机和工作,我想这是由于您使用的字体,它可能没有重量,您使用的是什么字体? (不能评论)。

编辑: 我已经做了一些研究,我发现,只有一个(个人/联)风格的存在,即使它是一个丰富的文件“.TFF”文件。如果以“consolas”字体为例,有4种类型(普通/斜体/粗体/粗体 - 斜体),这些类型一起使用,但在单独的文件中使用。我希望这能回答你的问题。

+0

已编辑的问题 – SnowyCoder

+0

是的,但在java.awt.Font中有一些派生字体的东西,它在其他正常的API /应用程序中,是不是有任何方法来派生粗体或斜体? (即使它应该自己做) – SnowyCoder