在JavaFX的单个TextField中支持多种语言字体

时间:2020-07-21 03:12:40

标签: css javafx fonts

我是JavaFX的新手,我想知道如何支持多种语言的字体(例如,中文,英文,印地语等)。

当前,当我将TextField设置为使用支持CSS中拉丁字符的字体系列时,其他语言的字符将无法正确呈现。

enter image description here

这是我的CSS:

@font-face {
    src: url('WorkSans-Regular.ttf');
}
.text-area {
    -fx-font-size: 25;
    -fx-font-family: 'Work Sans';
}

我意识到JavaFX css不允许使用逗号分隔的字体作为字体栈和后备字体,如下所示:

@font-face {
    src: url('WorkSans-Regular.ttf');
}
@font-face {
    src: url('NotoSansSC-Regular.ttf');
}
.text-area {
    -fx-font-size: 25;
    -fx-font-family: 'Work Sans', 'Noto Sans SC';
}

还有另一种支持多种语言键入的方法吗? 我的项目要求用户输入多种语言的文本,并且我需要确保将字体嵌入到.jar中,以便每个用户都具有相同的UI。

1 个答案:

答案 0 :(得分:0)

尝试这种方式

    @font-face {
        font-family: 'Work Sans';                  /*  add this line  */
        src: url('WorkSans-Regular.ttf');
    }
    
    .text-area {
        -fx-font-size: 25;
        -fx-font-family: 'Work Sans';
    }
相关问题