解析Gif文件的每一帧为图片文件_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 解析Gif文件的每一帧为图片文件

解析Gif文件的每一帧为图片文件

 2014/9/16 1:04:56  三片仙人掌  程序员俱乐部  我要评论(0)
  • 摘要:网上下了解析gif的代码,有以下几个类(可以在网上找到):AnimatedGifEncoderGifDecoderLZWEncoderNeuQuant调用的例子:publicstaticvoidmain(String[]args)throwsImageFormatException,IOException{GifDecoderd=newGifDecoder();d.read("C:\\Users\\rui\\Desktop\\1.gif");//d.decodeImageData()
  • 标签:图片 文件 解析
网上下了解析gif的代码,有以下几个类(可以在网上找到):
AnimatedGifEncoder
GifDecoder
LZWEncoder
NeuQuant

调用的例子
class="java" name="code">
public static void main(String[] args) throws ImageFormatException,
			IOException {
		GifDecoder d = new GifDecoder();
		d.read("C:\\Users\\rui\\Desktop\\1.gif");
//		d.decodeImageData();
		int n = d.getFrameCount();
		System.out.println(d.gctFlag);
		System.out.println(d.gctSize);
		System.out.println(d.gct);
//		for(int i : d.gct) System.out.println(i);
		for (int i = 0; i < n; i++) {
			BufferedImage frame = d.getFrame(i); //  frame i
			
			int t = d.getDelay(i);
			FileOutputStream fos = new FileOutputStream("C:\\Users\\rui\\Desktop\\zrzr\\" + i + ".jpg");
			
			JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(fos);
			encoder.encode(frame);
			fos.close();
		}
	}



问题:
解析出来的图片颜色的怪怪的,背景是红色的...反正和原来看到的gif不一样,找半天原因,可能和 全局色表(global color table)有关,但还没弄明白。
看GIF文件协议看的头疼!
妈呀,谁能帮帮我?!
发表评论
用户名: 匿名