3
Iはことなく反対が最初たBufferedImage(SwingFXUtils.fromFXImage(画像、NULL))に変換する必要があります。
私は直接バイトをファイルに書き込むことができます。
私は次のことを試してみた:
PixelReader pixelReader = image.getPixelReader();
int width = (int)image.getWidth();
int height = (int)image.getHeight();
byte[] buffer = new byte[width * height * 4];
pixelReader.getPixels(
0,
0,
width,
height,
PixelFormat.getByteBgraInstance(),
buffer,
0,
width * 4
);
しかしバイト[]バッファを書き込むことによって生成されたファイルが有効なイメージではありません。
これについての洞察はありますか?
編集:How to get byte[] from javafx imageViewで与えられた解決策は私の質問には適用できません。 SwingFXUtilsを使ってBufferedImageに変換するのは使いたくないと明記しています。 また、イメージファイルに書き込むことができるようにバイト配列に変換したいと思います。
可能な重複:// stackoverflowの.com/questions/24038524/how-to-get-byte-javafx-imageview) – Destrif