你可以在JavaFX中使用字体连字吗?

时间:2017-12-10 13:15:35

标签: java javafx

我实现了基于JavaFX的文本编辑器。是否可以以与Intellij中相同的方式显示字体连字?

我在JavaFX API中找到了对连字支持的引用,但我不知道这个"是否证明"那是支持。

1 个答案:

答案 0 :(得分:2)

您可以使用Tomas Mikula RichTextFX库。

https://github.com/FXMisc/RichTextFX/

这里有很多选择:

1) InlineCssTextArea 使用

Node#setStyle(String cssStyle)

设置

文本对象的样式的方法
InlineCssTextArea

并且对于每个单词或行,您可以使用以下方式设置不同的样式:

InlineCssTextArea.setStyle(from,to,style);

之前我已广泛使用过它,在同一行或多行中包含不同的字体和样式。

2) StyleClassedTextArea 使用Node#setStyleClass(String styleClass)方法设置Text个对象的样式。您可以在样式表中定义样式类。

所以,让我们说你application.css内部已经定义了5种不同的字体类型。其中一个可能是......

.red { -fx-fill: red; }

所以你可以使用:

styleClassedTextArea.setStyleClass(from, to, "red");

这会将[from,to]范围内的文本呈现为红色。

3)有关详情,请查看https://github.com/FXMisc/RichTextFX它有详细说明。

您还可以在网上搜索更多示例。