是否可以在 JavaFX2 中的一段文本中创建多个图像?例如,文本中的笑脸。
请注意:我特别要求 JavaFX2,而不是 JavaFX8。
不,您不能真正将图像放置在 JavaFX 2 中的单个文本节点中。
您可以使用像带有笑脸的字体之类的 Dingbats ,但是您可能仍然希望使用多个节点来构建您的段落,在常规字体和笑脸字体之间来回切换字体。
您可以做的是使用具有不同 Text 和 ImageView 实例的FlowPane 。您可以在相关问题中找到这种方法的示例:Javafx Text multi-word colorization。
我知道您对 Java 8 不感兴趣,但如果其他人感兴趣,在 Java 8 中您可以使用TextFlow来设置文本样式,而不是在 FlowPane 中使用不同 Text 实例的组合。TextFlow 更优雅,因为它会自动为您处理断词处的换行,而使用 FlowPane,您将需要为每个单词创建一个新的 Text 节点,以获得段落的平滑换行。当然,Java 8 更适合此类任务。