我有一个使用
创建的Image对象SnapshotParameters para = new SnapshotParameters();
para.setFill(Color.TRANSPARENT);
Image img = myStackPane.snapshot(para, null);
现在,我想将其转换为Base64图像,将其放入javafx WebView。但我没有找到任何方法来做到这一点。请有人帮帮我吗?
答案 0 :(得分:3)
将Image
转换为字节数组,例如this answer。然后使用任何Base64库进行编码。例如Apache Commons
。
修改强>
BufferedImage bImage = SwingFXUtils.fromFXImage(logo.getImage(), null);
ByteArrayOutputStream s = new ByteArrayOutputStream();
ImageIO.write(bImage, "png", s);
byte[] res = s.toByteArray()
s.close();
Base64.encode(res);