从数据库中取出来的二进制图片改变大小 从数据库中取出来的二进制图片改变大小 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import com.sun.image.codec.jpeg.*; import java.awt.image.BufferedImage; import java.awt.image.Kernel; import java.awt.image.BufferedImageOp; import java.awt.image.*; 添加类成员: private InputStream inputStream; private ByteArrayOutputStream bout; private BufferedImage bufferedImage; ImageIcon mi = new ImageIcon("E:\\samples\\java\\SailiTest\\T18Big.gif"); this.saveImage(mi.getImage(),"e:\\2.jpg");//存成800*600的图像 //转换方法 public void saveImage(Image pImage,String ofileDirAndName) { BufferedImage bimg = null; int w = pImage.getWidth(null); int h = pImage.getHeight(null); int [] pixels = new int[w * h]; PixelGrabber pg = new PixelGrabber(pImage,0, 0, w, h,pixels, 0, w); try { pg.grabPixels(); } catch(InterruptedException e) { e.printStackTrace(); } this.bout= new ByteArrayOutputStream();System.out.println("3"); System.out.println("图像宽高:" +w+":"+h ); BufferedImage bufferedImage= new BufferedImage(800,600,BufferedImage.TYPE_INT_RGB); bufferedImage.setRGB(0,0,800,600,pixels,0,w); float[] sharpKernel = { 0.0f, -1.0f, 0.0f,-1.0f, 5.0f, -1.0f, 0.0f, -1.0f, 0.0f };System.out.println("5"); BufferedImageOp sharpen= new ConvolveOp( new Kernel(3, 3, sharpKernel), ConvolveOp.EDGE_NO_OP, null); BufferedImage sharp= sharpen.filter( bufferedImage, null ); try { JPEGEncodeParam jpegParam= JPEGCodec.getDefaultJPEGEncodeParam( sharp ); jpegParam.setQuality( 1.0f, false ); JPEGImageEncoder jpeg= JPEGCodec.createJPEGEncoder( bout, jpegParam ); jpeg.encode( bufferedImage ); this.bout.writeTo(new FileOutputStream(ofileDirAndName)); } catch(Exception ee) { System.err.println("出错了"+ee); } } 关于mySql中in语句的替换问题 无验证信息发送邮件问题,在线等待。。。。。 jsp中fckedit如何删除上传文件 怎样让在页面里显示(<IMG src="D:\Backup\a.jpg">)文字变为图片? 在页面显示上传的图片 求有关框架的电子书 jsp页面里的转义字符如何提交? jsp页面 超链接 中文乱码问题 jsp连接数据库问题 SQL2000 请大家帮忙 我是刚学 在jquery的内置函数each中key是一个对象,我能否通过key.id来取到该对象的id值? 对于比较复杂的表组织,hibernate该怎么处理 一个关于JSP连接数据库的问题
import com.sun.image.codec.jpeg.*;
import java.awt.image.BufferedImage;
import java.awt.image.Kernel;
import java.awt.image.BufferedImageOp;
import java.awt.image.*;
添加类成员:
private InputStream inputStream;
private ByteArrayOutputStream bout;
private BufferedImage bufferedImage;
ImageIcon mi = new ImageIcon("E:\\samples\\java\\SailiTest\\T18Big.gif");
this.saveImage(mi.getImage(),"e:\\2.jpg");//存成800*600的图像
//转换方法
public void saveImage(Image pImage,String ofileDirAndName)
{
BufferedImage bimg = null;
int w = pImage.getWidth(null);
int h = pImage.getHeight(null);
int [] pixels = new int[w * h];
PixelGrabber pg = new PixelGrabber(pImage,0, 0, w, h,pixels, 0, w);
try {
pg.grabPixels();
}
catch(InterruptedException e) {
e.printStackTrace();
}
this.bout= new ByteArrayOutputStream();System.out.println("3");
System.out.println("图像宽高:" +w+":"+h );
BufferedImage bufferedImage= new BufferedImage(800,600,BufferedImage.TYPE_INT_RGB);
bufferedImage.setRGB(0,0,800,600,pixels,0,w);
float[] sharpKernel = { 0.0f, -1.0f, 0.0f,-1.0f, 5.0f, -1.0f, 0.0f, -1.0f, 0.0f };System.out.println("5");
BufferedImageOp sharpen= new ConvolveOp( new Kernel(3, 3, sharpKernel), ConvolveOp.EDGE_NO_OP, null);
BufferedImage sharp= sharpen.filter( bufferedImage, null );
try
{
JPEGEncodeParam jpegParam= JPEGCodec.getDefaultJPEGEncodeParam( sharp );
jpegParam.setQuality( 1.0f, false );
JPEGImageEncoder jpeg= JPEGCodec.createJPEGEncoder( bout, jpegParam );
jpeg.encode( bufferedImage );
this.bout.writeTo(new FileOutputStream(ofileDirAndName));
}
catch(Exception ee)
{
System.err.println("出错了"+ee);
}
}