拍摄屏幕特定部分的快照/屏幕截图(javaFX)

时间:2017-11-09 18:16:41

标签: image javafx screenshot clipboard scenebuilder

我希望能够在javaFX中截取场景的某个部分。 Here is an image of what the scene looks like。我想输入参数(例如区域的大小和区域的位置),这意味着只有图表被截图/截取。然而,图表本身由标签和图像组成。 当它被截图时,我想通过WritableImage保存屏幕截图或将其复制到剪贴板,无论哪个更容易。 我该怎么做?如果你需要知道,我正在使用场景构建器。

1 个答案:

答案 0 :(得分:1)

只要您的整个'图表'(包括其所有标签等)都是javafx.scene.Node,您就可以使用snapshot功能。

如果它们不在同一节点中,请考虑将它们全部添加为GroupParentRegion的子级。

在Scene Builder中执行此操作的方法是进入杂项,添加“组”或“区域”,然后在文档层次结构中拖动要截断到该组中的每个标签和节点。您也可以使用“容器”下的任何内容,但这些内容具有Group实际上没有的其他格式。为组提供一个fx:id,并在组中的Java代码中调用snapshot。这真的很容易。