如何使用类型安全css加载自定义字体?

如何使用类型安全css加载自定义字体?,css,tornadofx,Css,Tornadofx,我想用typesafe css在tornadofx应用程序中加载自定义字体,这可能吗? 感谢并致以最诚挚的问候。只要加载了字体,它就可以在CSS中使用,因此我们在TornadoFX中添加了一个loadFont帮助程序,可以像这样使用: class FontTest:App(主::类,样式::类) 主类:视图(“字体测试”){ 覆盖val root=stackpane{ 标签(“这是我的标签”){ addClass(Styles.custom) } } } 类样式:样式表(){ 伴星{ 由cssc

我想用typesafe css在tornadofx应用程序中加载自定义字体,这可能吗?
感谢并致以最诚挚的问候。

只要加载了字体,它就可以在CSS中使用,因此我们在TornadoFX中添加了一个
loadFont
帮助程序,可以像这样使用:

class FontTest:App(主::类,样式::类)
主类:视图(“字体测试”){
覆盖val root=stackpane{
标签(“这是我的标签”){
addClass(Styles.custom)
}
}
}
类样式:样式表(){
伴星{
由cssclass()自定义的val
//注意loadFont()返回字体?
val riesling=loadFont(“/fonts/riesling.ttf”,48.0)
}
初始化{
习俗{
填充=框(25.px)
雷司令?.let{font=it}
//或者,如果您只想设置字体系列:
//雷司令?.let{fontFamily=it.family}
}
}
}

如果您确定字体存在(例如,您的构建中包含),则可以简化为:

类样式:样式表(){
伴星{
由cssclass()自定义的val
val riesling=loadFont(“/fonts/riesling.ttf”,48.0)!!
}
初始化{
习俗{
填充=框(25.px)
font=雷司令
//或者,如果您只想设置字体系列:
//fontFamily=雷司令.family
}
}
}

顺便说一句,在回答这个问题的29天之后,他添加了
loadFont
函数:),用它可以写:

class Styles : Stylesheet() {
    private val customFont = loadFont("/fonts/custom-font.ttf", 14)!!

    init {
        root {
            font = customFont
            fontSize = 11.px
        }
    }
}

你好目前还没有对@font-face规则的特殊支持,但我们正在努力。现在,您可以覆盖样式表的
render()
函数,并添加
“@font-face{…}”+super.render()
。我们将尽快调回更好的解决方案:)嗨,Edvin和Ruckus T-Boom,感谢您的快速帮助。这对我有好处。有了TornadFX,你的工作做得很棒。谢谢。显然,我从来没有回来修正我的答案,所以我就这么做了。