资源简介
java图片压缩处理 支持gif动态图的处理,绝对真实,项目中亲自使用
代码片段和文件信息
package com.molfun.my.imgutils2;
import java.io.*;
import java.awt.*;
import java.awt.image.*;
/**
* Class AnimatedGifEncoder - Encodes a GIF file consisting of one or
* more frames.
*
* Example:
* AnimatedGifEncoder e = new AnimatedGifEncoder();
* e.start(outputFileName);
* e.setDelay(1000); // 1 frame per sec
* e.addframe(image1);
* e.addframe(image2);
* e.finish();
*
* No copyright asserted on the source code of this class. May be used
* for any purpose however refer to the Unisys LZW patent for restrictions
* on use of the associated LZWEncoder class. Please forward any corrections
* to questions at fmsware.com.
*
* @author Kevin Weiner FM Software
* @version 1.03 November 2003
*
*/
public class AnimatedGifEncoder {
protected int width; // image size
protected int height;
protected Color transparent = null; // transparent color if given
protected int transIndex; // transparent index in color table
protected int repeat = -1; // no repeat
protected int delay = 0; // frame delay (hundredths)
protected boolean started = false; // ready to output frames
protected OutputStream out;
protected BufferedImage image; // current frame
protected byte[] pixels; // BGR byte array from frame
protected byte[] indexedPixels; // converted frame indexed to palette
protected int colorDepth; // number of bit planes
protected byte[] colorTab; // RGB palette
protected boolean[] usedEntry = new boolean[256]; // active palette entries
protected int palSize = 7; // color table size (bits-1)
protected int dispose = -1; // disposal code (-1 = use default)
protected boolean closeStream = false; // close stream when finished
protected boolean firstframe = true;
protected boolean sizeSet = false; // if false get size from first frame
protected int sample = 10; // default sample interval for quantizer
/**
* Sets the delay time between each frame or changes it
* for subsequent frames (applies to last frame added).
*
* @param ms int delay time in milliseconds
*/
public void setDelay(int ms) {
delay = Math.round(ms / 10.0f);
}
/**
* Sets the GIF frame disposal code for the last added frame
* and any subsequent frames. Default is 0 if no transparent
* color has been set otherwise 2.
* @param code int disposal code.
*/
public void setDispose(int code) {
if (code >= 0) {
dispose = code;
}
}
/**
* Sets the number of times the set of GIF frames
* should be played. Default is 1; 0 means play
* indefinitely. Must be invoked before the first
* image is added.
*
* @param iter int number of iterations.
* @return
*/
public void setRepeat(int iter) {
if (iter >= 0) {
repeat = iter;
}
}
/**
* Sets the transparent color for the last added frame
* and any subsequent frames.
* Since all colors are subject to modification
* in the quantizatio
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 12947 2009-12-28 16:28 imgutils2\AnimatedGifEncoder.java
文件 18425 2009-12-28 16:28 imgutils2\GifDecoder.java
文件 8272 2009-12-28 16:28 imgutils2\ImageSpek.java
文件 8030 2009-12-28 16:28 imgutils2\LZWEncoder.java
文件 13212 2009-12-28 16:28 imgutils2\NeuQuant.java
文件 406 2009-12-28 16:28 imgutils2\test.java
文件 5064 2009-12-28 16:28 imgutils2\UploadUtil.java
目录 0 2009-12-28 15:47 imgutils2
----------- --------- ---------- ----- ----
66356 8
- 上一篇:java代码生成器内含模板
- 下一篇:医院门诊管理系统
相关资源
- 医院门诊管理系统
- java代码生成器内含模板
- Java 魔板游戏
- JAVA写的界面相对华丽的扫雷游戏
- JAVA实现求矩阵表示的无向图的欧拉通
- java读取写入txt文件
- OutOfMemoryError_8种典型案例分享
- JAVA经典算法90题
- mysql-connector-java-5.1.30-bin.jar
- 采用java操作neo4j数据库源码
- java操作考勤机完整版代码
- OATH标准OTP算法
- Java打飞机游戏源码+论文
- 图书管理系统java课程设计报告.
- java 图形界面 排序小应用
- JAVA—comm.jar串口通信包
- 尚硅谷java核心技术教程.txt
- java实现基于SMO算法的SVM分类器
- java实现基于ID3算法的决策树分类器
- JAVA操作注册表的JNI库和JAR包jRegistry
- 相似图片搜索原理 Java实现源码
- Java实现的借贷管理源代码
- Java图形用户界面通讯录
- 小小工具箱-备忘录,日历,倒计时
- Android Socket源码实现与PC通讯
- Android手机版Java五子棋源代码
- java从入门到精通第三版光盘明日科技
- Java 课程表管理系统
- jsp上传头像
- 传智播客20套java项目高清视频完整源
评论
共有 条评论