我想获取一个文本 (javafx.scene.text) 并将其放在多边形上。
我通过尝试本教程在一个组(javafx.scene.group)中进行了尝试:tutorial on stackoverflow
这不适用于 text.setClip(Polygon)。
Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
at ch.berufsbildungscenter.notiztool.gui.control.BbcPolygon$1.run(BbcPolygon.java:33)
at com.sun.javafx.application.PlatformImpl$6$1.run(Unknown Source)
at com.sun.javafx.application.PlatformImpl$6$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl$6.run(Unknown Source)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(Unknown Source)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$300(Unknown Source)
at com.sun.glass.ui.win.WinApplication$4$1.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
还有其他方法可以将文本放到多边形上吗?
谢谢 和平
最佳答案
setClip() 有不同的用途。您可以查看documentation
要轻松地将文本放置在多边形或任何其他节点上,您可以使用 javafx.scene.layout.StackPane像这样:
StackPane stack=new StackPane();
stack.getChildren().add(polygonInstance);
stack.getChildren().add(textInstance);
最后添加的节点将位于顶部。
关于多边形内/多边形上的 JavaFX 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25602478/