2014-04-01 166 views
0

我發現了一些基本的例子,如何使用JavaFX打印網頁,但我正在尋找可以打印帶應用內容的完整場景的例子。有沒有例子?打印舞臺與JavaFX 8

+0

看看這個[回覆](http://stackoverflow.com/questions/22789449/export-stage-into-pdf/22796964#22796964) – xuesheng

回答

2

您可以將場景轉換爲使用

WritableImage snapshot = scene.snapshot(null); 

這將返回一個WritableImage的圖像,它可以轉換爲圖像文件或BufferedImage中,並使用JavaFX8的打印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編寫的圖片只是一個小例子,請通過

Proper way of printing a BufferedImage in Java

How to print image in java