通常,通过以常规图像格式存储图像,可以通过创建
java.awt.image.BufferedImage
javax.imageio.ImageIO
应用程序编程接口:
Image image = ... ;
ImageIO.write(SwingFXUtils.fromFXImage(image, null), "png", ...);
第三个论点
ImageIO.write(...)
File
或
OutputStream
.
如果您有一个类想要使其可序列化,它包含
Image
,可以创建自定义序列化窗体:
public class SomeClass implements Serializable {
private transient Image image ;
// other fields, etc...
private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException {
s.defaultReadObject();
image = SwingFXUtils.toFXImage(ImageIO.read(s), null);
}
private void writeObject(ObjectOutputStream s) throws IOException {
s.defaultWriteObject();
ImageIO.write(SwingFXUtils.fromFXImage(image, null), "png", s);
}
}