Java处理图片的一些知识

来源:互联网 发布:移动通信网络基础知识 编辑:程序博客网 时间:2024/05/17 05:04

第一段代码:

BufferedImage src = ImageIO.read(new File(srcImageFile)); // 读入文件  
int width = src.getWidth(); // 得到源图宽  
int height = src.getHeight(); // 得到源图长  
width = 100;  
height = 100; 
Image image = src.getScaledInstance(width, height, Image.SCALE_DEFAULT);  
BufferedImage tag = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);  
Graphics g = tag.getGraphics();  
g.drawImage(image, 0, 0, null); // 绘制缩小后的图  
g.dispose(); 
ImageIO.write(tag, "JPEG", new File(result));// 输出到文件流  

 

第二段代码:

BufferedImage src = ImageIO.read(is); // 读入文件
int width = 100;
int height = 100;
Image image = src.getScaledInstance(width, height,
Image.SCALE_DEFAULT);
BufferedImage tag = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = tag.getGraphics();
g.drawImage(image, 0, 0, null); // 绘制缩小后的图
g.dispose();
ByteArrayOutputStream bs = new ByteArrayOutputStream();
ImageOutputStream imOut = ImageIO.createImageOutputStream(bs);
ImageIO.write(tag, "jpg ", imOut);// 输出到文件流
is0 = new ByteArrayInputStream(bs.toByteArray());

 

两段代码的区别:

   第一段代码处理完图片以后要写到硬盘里面,而第二段代码仍然保存在内存里面