我想在JavaFx中为TextFlow
中的Text
设置一个特定的ont。
但是,Font
只有static .font()
方法,这需要FontWeight
实例。
如何将"常规"等字体样式转换为FontWeight
实例?字体的最终字段中没有"常规"。
对于"常规"样式,只需使用采用字体名称和/或大小的静态方法之一:
text.setFont(Font.font(12)); // 12 point, default font family
或
text.setFont(Font.font("Serif")); // default font size
或
text.setFont(Font.font("Serif", 12)); // 12 point serif...
FontWeight
枚举指定字体的"粗细"(即粗体、超粗体、浅色等);其默认值为 FontWeight.NORMAL
。
FontPosture
枚举指定字体是否为斜体;它的值是FontPosture.REGULAR
和FontPosture.ITALIC
。
Font.font(...)
方法被重载以采用字体名称、大小、粗细和姿势的大多数组合,如果未提供默认值,则恢复为默认值。所以
text.setFont(Font.font("Serif", 12));
相当于
text.setFont(Font.font("Serif", FontWeight.NORMAL, FontPosture.REGULAR, 12));