我找到了一些如何使用JavaFX打印网页的基本示例,但我正在寻找可以打印带有应用内容的完整场景的示例。有什么例子吗?
答案 0 :(得分:2)
您可以使用
将场景转换为图像WritableImage snapshot = scene.snapshot(null);
这将返回一个WritableImage,它可以转换为Image File或BufferedImage,并使用JavaFX8的Printing API进行打印(没有很多可用的示例,但是新的API与旧的非常相似打印API,所以不会有问题)
将WritableImage转换为Png文件
WritableImage snapshot = scene.snapshot(null);
File file = new File("image.png");
try {
ImageIO.write(SwingFXUtils.fromFXImage(snapshot, null), "png", file);
} catch (IOException e) {
e.printStackTrace();
}
将WritableImage转换为BufferedImage (用于打印)
WritableImage snapshot = scene.snapshot(null);
BufferedImage bufferedImage = SwingFXUtils.fromFXImage(snapshot, null);
关于如何使用java打印图像的一个小例子,请通过