2016-04-20 3 views
0

私のシーンには2つの矩形があります。setFill()を使用してこれらの矩形の背景を設定し、いくつかの変更を加えます。saveDialogを使用して、ここに私の保存機能である -javafxのファイルダイアログを使用して矩形の背景画像を保存します

FileChooser fileChooser = new FileChooser(); 
    fileChooser.getExtensionFilters().add(new ExtensionFilter("Image Files", "*.png", "*.jpg", "*.gif")); 
    fileChooser.setTitle("Save Image"); 
    File file = fileChooser.showSaveDialog(window); 
    rect2.getFill(); 
    SaveFile(file); 
+0

保存したいものは何ですか?実際のイメージ(別のプログラムで開くことができる)、または背景色を記述するデータ? –

+0

変更後の実際のイメージ。 – newuser

答えて

1

あなたはノード上snapshot(...)を呼び出すことにより、任意のノードからjavafx.scene.image.Imageを作成することができます。

Image img = rect2.snapshot(null, null); 

javax.imageio.ImageIOクラスは、標準形式で画像を保存するための方法が、唯一の作品を持っていますAWTイメージでは、最初に変換する必要があります:

BufferedImage bImg = SwingFXUtils.fromFXImage(img, null); 
String format = file.getName().substring(file.getName().lastIndexOf(".")+1); 
ImageIO.write(bImg, format, file); 
関連する問題