Java處理圖片的一些知識

第一段代碼:

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());

 

兩段代碼的區別:

   第一段代碼處理完圖片以後要寫到硬盤裏面,而第二段代碼仍然保存在內存裏面

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章