通过套接字传输动画GIF

时间:2012-09-09 17:59:19

标签: java sockets applet gif

我参与了一个项目,我需要通过TCP套接字从服务器将GIF传输到applet。 问题是,当我传输图像时,它变为静态(显示最后一帧)。

我尝试传输(ICON)我在服务器端加载图像,但结果相同。

那么,是否有任何类可以读取动画gif,所以我可以通过ObjectOutputStream进行传输? 或者其他什么方式?

服务器端:

ImageIcon icon = new ImageIcon("D:\\Data Files\\simu.gif");
Mat_out.writeObject(icon);

客户端:

ImageIcon icon = (ImageIcon) Mat_in.readObject();
jLabel2.setIcon(icon);

1 个答案:

答案 0 :(得分:0)

  1. 使用工具包的createImage(..) methods of toolkit方法之一加载图片,但是..
  2. 在传输之前添加MediaTracker以确保整个图像已加载。 (这也适用于从ImageIcon返回的图像,但为什么要创建不需要的GUI组件?)
  3. 使用屏蔽方法交替加载图片的整个byte[],然后将其提供给createImage(byte[])