Как лучше сериализовать java.awt.Image? - PullRequest
12 голосов
/ 26 сентября 2008

У меня есть Serializable объект, который должен содержать java.awt.Image в качестве своего члена. Как мне начать сериализацию? (Отредактировано из не очень понятной первой версии, извините.)

Ответы [ 3 ]

13 голосов
/ 26 сентября 2008

ImageIcon реализует Serializable, и его можно использовать для переноса класса Image

http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/ImageIcon.html

2 голосов
/ 26 сентября 2008

javax.swing.ImageIcon, как часть Swing, не гарантирует наличие совместимой сериализованной формы между версиями. Тем не менее, вы можете обмануть и посмотреть на его код readObject и writeObject - найти ширину и высоту, захватить пиксели с помощью PixelGrabber. Я не совсем уверен, что правильно покрывает цветовую модель. Очевидная альтернатива - написать реальный формат изображения с помощью javax.imageio.

0 голосов
/ 26 сентября 2008

Ни о чем я не знаю. Я считаю, что вам нужно написать свой собственный сериализатор для него, чтобы в основном сохранить ширину, высоту и значения пикселей ... Или записать его в поток в виде PNG или что-то вроде

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...