2014-09-01 114 views
0

我想将文本(javafx.scene.text)放在一个多边形上。JavaFX Text in in Polygon

我有一个集团(javafx.scene.group)尝试过通过尝试本教程:tutorial on stackoverflow

这并不与text.setClip(多边形)的工作。

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) 

是否有另一种方法可以将文本转换为多边形?

感谢 和平

回答

2

setClip的()有不同的目的。您可以检查documentation
要轻松将文本置于多边形或任何其他节点上,可以使用javafx.scene.layout.StackPane,如下所示:
StackPane stack=new StackPane(); stack.getChildren().add(polygonInstance); stack.getChildren().add(textInstance);
最后添加的节点将位于顶部。