2014-09-01 110 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);
最後添加的節點將位於頂部。