2

我正在尝试制作一个Text节点小型大写字母。在 CSS 中,我可以font-variant: small-caps;制作小型大写字母;但是,JavaFX 似乎没有这个。我知道我可以使用TextFlow具有两种字体大小的 a,但这似乎是一个不雅的解决方案。

有没有什么简单的方法可以在 JavaFX 中制作文本小写字母?

4

1 回答 1

1

谷歌“谷歌字体”。另外,谷歌看看你是否能找到一些自然的字体small caps。我找到了一个。JavaFX您可以在下面的应用中查看如何使用 Google 字体。

来自这里的代码。

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.stage.Stage;

/**
 *
 * @author Sedrick
 */
public class JavaFXApplication44 extends Application {

    @Override
    public void start(Stage primaryStage) {
        Label label = new Label("Hello @FontFace\n-- Gafata --");
        label.setStyle("-fx-font-family: 'IM Fell French Canon SC', serif; -fx-font-size: 80;");
        Scene scene = new Scene(label);
        scene.getStylesheets().add("https://fonts.googleapis.com/css?family=IM+Fell+French+Canon+SC");
        primaryStage.setTitle("Hello @FontFace");
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        launch(args);
    }

}

在此处输入图像描述

于 2018-02-24T07:15:01.537 回答