javafx - 如何在不支持 css 字符串变量的情况下通过 CSS 在 JavaFX 中切换字体系列?
问题描述
假设我确实通过 CSS 将我想用于拉丁语言的字体系列分配给我的所有 UI 控件
控制1.css:
.controlStyleClass > Label {
-fx-font-family: 'MyLatinFont';
.controlStyleClass > Text {
-fx-font-family: 'MyBoldLatinFont';
}
如果应用程序的语言更改为中文,则希望切换到另一种字体。如果我可以通过 css 变量定义字体字符串,而不是为我的每个 UI 控件交换样式类定义,那就太容易了:
控制1.css:
.controlStyleClass > Label {
-fx-font-family: selectedFont;
}
.controlStyleClass > Text {
-fx-font-family: selectedBoldFont;
}
稍后分配 latin.css:
* {
selectedFont: 'MyLatinFont';
selectedBoldFont: 'MyBoldLatinFont';
}
或中文.css
* {
selectedFont: 'MyChineseFont';
selectedBoldFont: 'MyBoldChineseFont';
}
作为我的应用程序的样式表。不幸的是,到目前为止,JavaFX 似乎只支持数字和颜色的 css 变量。有没有人对这种字体处理有一个好的概念/解决方法?我真的很感激每一个提示......!