java读取gif图片后,重新写一个gif图片,此图片没有动画效果

问题描述

我用java读取一个gif图片,把它再重新写一个gif图片,但是新写出来的图片就没有动画了,为什么??急用 大家帮帮忙我刚开始是这样写的,运行生成的gif图片不能看List < BufferedImage > images = new ArrayList<BufferedImage>(); try{ File file=new File("e:\awkoe.gif"); java.util.Iterator<ImageReader> imageReaders = ImageIO.getImageReadersByFormatName("gif");ImageReader imageReader = (ImageReader)imageReaders.next();imageReader.setInput(ImageIO.createImageInputStream(file));for(int i = 0;true;++i){try{BufferedImage aa=imageReader.read(i);images.add(aa);}catch (Exception e) {break;}}BufferedImage[] bufimages= images.toArray(new BufferedImage[images.size()]);Iterator<ImageWriter> imageWriters = ImageIO.getImageWritersByFormatName("gif");ImageWriter imageWriter = (ImageWriter)imageWriters.next();File outfile=new File("d:\aa.gif");outfile.delete();imageWriter.setOutput(ImageIO.createImageOutputStream(outfile));if(imageWriter.canWriteSequence()){imageWriter.prepareWriteSequence(null);for(int i = 0;i < bufimages.length;++i){imageWriter.writeToSequence(new IIOImage(bufimages[i],null,null),null);}imageWriter.endWriteSequence();}else{for(int i = 0;i < bufimages.length;++i){imageWriter.write(bufimages[i]);}} }catch (Exception e) { e.printStackTrace(); } 现在用这个方法,生成的gif可以看,但是他不是动画try {File file=new File("d:\aa.gif");Image image=ImageIO.read(new File("e:\awkoe.gif"));GifEncoder encoder = new GifEncoder(image,new FileOutputStream(file)); encoder.encode(); } catch (Exception e) {}请大家帮忙 谢谢问题补充:我要的不是在本机移动, 我需要在一个jsp页面上有个 <img src='/image'>标签,他提交到一个servlet, 在servlet中读取本地的一个gif图片,把它返回到jsp页面。 这样怎么弄?问题补充:谢谢 stephen830帮忙写点代码吧 过着说一下思路 急用 谢谢

解决方案

如果是仅仅要做的把图片提交到服务器端然后回显出来,那么不需要使用图片处理类,只要以2进制文件流的方式操作处理就可以了。
解决方案二:
gif格式支持动画格式,由1张或者多张图片通过一定的格式组合在一起,并设置每张图片的显示周期。你的问题应该是重新生成gif的时候没有设置gif中每一帧图片显示的间隔时间。具体的资料可以在google上搜索下。

时间: 2024-08-25 05:18:13

java读取gif图片后,重新写一个gif图片,此图片没有动画效果的相关文章

IBM中国研发中心面试题,如何用Java写一个程序达到对象深浅克隆的效果?不能用API

问题描述 IBM中国研发中心面试题,如何用Java写一个程序达到对象深浅克隆的效果?不能用API.来吧,大家发表意见,全分奉上. 问题补充:没人知道吗,能不能告诉我啊 解决方案 import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;/** * 深/浅克隆 * * @auth

android 如何实现图片的选择框上下左右移动加淡入淡出的动画效果?

问题描述 android 如何实现图片的选择框上下左右移动加淡入淡出的动画效果? 就是比如说一个图片查看器 然后屏幕上有好多的图片 选中一个图片有一个选择框 然后对那个选择框做处理 实现上下左右移动加淡入淡出的效果 难点是如何控制动画的效果 比如两个不一样大小的图片 希望高手能给出答案 或者提供一个思路,谢谢!

js写一个弹出层并锁屏效果实现代码_javascript技巧

复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu

我在写一个用rectangle截取图片的功能,遇到了点问题,求教

问题描述 这是我写的rectangle的移动和缩放因为缩放是按比例来的,没有宽高,所以截下来的图高和宽都没有,怎么办呢 解决方案

求助:java读取系统日历后根据第几周星期几来判断日期的方法

问题描述 我做的是教师听课安排表系统,所以第几周是按开学后的时间来计算的,比如2011年2月28日开学,从2月28日到3月6日为第一周.假设我要算第五周星期一是几月几号.

java读取word文档并显示在页面上

问题描述 java读取word文档并显示在页面上 我是一名java菜鸟,现在f盘有一word文档,我想用java读取(在action中写读取方法)并显示在jsp页面上,请问该如何处理? 解决方案 新手的话不建议你这样试,如果练习jar包的功能,可以练习读取.修改.追加等.如果必须这样,可以网上查查在html中嵌入一段代码可以利用office组件在html中显示word文档.网上如:百度文库,都不是这样做的,是第过软件把doc,xls等文件生成.flv通过flash播放器在页面上显示的.

Android Animation实战之一个APP的ListView的动画效果_Android

熟悉了基础动画的实现后,便可以试着去实现常见APP中出现过的那些精美的动画.今天我主要给大家引入一个APP的ListView的动画效果: 当展示ListView时,Listview的每一个列表项都按照规定的动画显示出来. 说起来比较抽象,先给大家看一个动画效果,这是APP窝牛装修的ListView显示动画:     有木有觉得很酷炫?有木有啊!? 一.Layout Animation     所谓的布局动画,其实就是为ViewGroup添加显示动画效果,主要用过LayoutAnimationCo

Android Animation实战之一个APP的ListView的动画效果

熟悉了基础动画的实现后,便可以试着去实现常见APP中出现过的那些精美的动画.今天我主要给大家引入一个APP的ListView的动画效果: 当展示ListView时,Listview的每一个列表项都按照规定的动画显示出来. 说起来比较抽象,先给大家看一个动画效果,这是APP窝牛装修的ListView显示动画: 有木有觉得很酷炫?有木有啊!? 一.Layout Animation     所谓的布局动画,其实就是为ViewGroup添加显示动画效果,主要用过LayoutAnimationContro

java基础-java读取数据库中图片的地址,然后再显示在jLabel框中,但是运行后没有加载图片

问题描述 java读取数据库中图片的地址,然后再显示在jLabel框中,但是运行后没有加载图片 我是通过新建函数来访问数据库的 public void getData(String medname){ String driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; String url="jdbc:sqlserver://localhost:1433;DatabaseName=account"; Strin