前言
在任何一个综合性网站,我们往往需要上传一些图片资料。但随着高分辨率DC的普及,上传的图片容量会很大,比如300万象素DC出来的文件基本不下600K。为了管理方便,大家可能不愿意每次都用ACDsee修改它,而直接上传到服务器。但是这种做法在客户端看来就没有那么轻松了,对于拨号上网的用户简直是一场恶梦,虽然你可以在图片区域设置wide和high!
上一篇文章中(http://www.blogjava.net/rosen/archive/2007/06/12/9940.html)我主要介绍了JPG(JEPG)、GIF、PNG图像的读取及压缩方法,遗憾的是不支持BMP图像。本文一鼓作气、再接再厉,一举解决了这个问题!
程序代码
package BMP;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.awt.image.MemoryImageSource;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
public class BMPReader{
public String Reader(){
Image image; //构造一个目标图
String result=""; //返回结果
try{
FileInputStream fs=new FileInputStream("/test.BMP");
int bflen=14;
byte bf[]=new byte[bflen];
fs.read(bf,0,bflen); //读取14字节BMP文件头
int bilen=40;
byte bi[]=new byte[bilen];
fs.read(bi