2015-06-21 8 views
10

Ho un'immagine Ho screenshot dal monitor primario e voglio aggiungere a una Java FX ImageView come così:BufferedImage immagine JavaFX per

@FXML 
protected ImageView screenshot() throws AWTException, IOException { 
    Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()); 
    BufferedImage capture = new Robot().createScreenCapture(screenRect); 
    ImageView imageView = new ImageView(); 
    Image image = capture; //Error 
    imageView.setImage(image); 
    return imageView; 
} 

Sto cercando di impostare il BufferedImage capture al javafx.scene.image.Image image ma il i tipi sono incompatibili, né sono in grado di lanciarlo. Come posso rettificare questo?

risposta

28

È possibile utilizzare

Image image = SwingFXUtils.toFXImage(capture, null); 
+2

Puoi commentare circa le prestazioni di questa soluzione? C'è un modo per creare direttamente 'javafx.scene.image.Image' senza prima creare' BufferedImage'? – Halil