У меня есть несколько изображений, которые отображаются в моем приложении. Они генерируются данными, которые я ввожу. Теперь я хочу сохранить изображения в одном png-файле (предпочел бы jpg, но png тоже делает свою работу). Прямо сейчас последнее изображение будет перезаписано следующим, так что только последнее изображение будет сохранено в файле png. Я думал о создании одного изображения, которое состоит из всех изображений, которые я хочу сохранить в файле PNG. У кого-нибудь есть идеи, как это сделать? Или есть более простой способ сохранить изображения в одном файле?
private final ObservableList<Image> pdfFilePages = FXCollections.observableArrayList();
pngButton.setOnAction(e -> {
if (pdfFilePages.size() > 0) {
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle(I18N.get("key.save_to_png"));
File file = fileChooser.showSaveDialog(dialogStage);
if (file != null) {
for (Image img : pdfFilePages) {
ImageView imgView = new ImageView(img);
try {
BufferedImage bi = SwingFXUtils.fromFXImage(img, null);
ImageIO.write(bi, "png", file);
} catch (IOException e1) {
LOGGER.error(e1.getMessage(), e1);
}
}
}
}
});