您的位置:首页 > 编程语言 > Java开发

java图像缩放

2009-09-14 15:59 162 查看
图像的缩放,使用Image image = src.getScaledInstance((int)(width * scale),
(int)(height * scale), Image.SCALE_DEFAULT);
width,height为原来图片的高和宽,scale为缩放的比率(缩放后/原图)。

import java.awt.image.BufferedImage;

import java.awt.Image;

import java.awt.Graphics2D;

import javax.imageio.ImageIO;

import java.io.File;

import java.io.FileOutputStream;

import java.io.OutputStream;

import java.io.IOException;
public class ImageDone

{

/**

* 图像缩放

* @param srcPath

* @param targetPath

* @param scale

*/

public void zoom(String srcPath, String targetPath, float scale)

{



try

{

BufferedImage src = ImageIO.read(new File(srcPath)); // 读入源图像

int width = src.getWidth(); // 源图宽

int height = src.getHeight(); // 源图高



// 获取一个宽、长是原来scale的图像实例

Image image = src.getScaledInstance((int)(width * scale), (int)(height * scale), Image.SCALE_DEFAULT);



//缩放图像

BufferedImage tag = new BufferedImage((int)(width * scale), (int)(height * scale), BufferedImage.TYPE_INT_RGB);

Graphics2D g = tag.createGraphics();



g.drawImage(image, 0, 0, null); // 绘制缩小后的图

g.dispose();



OutputStream out = new FileOutputStream(targetPath);

ImageIO.write(tag, "GIF", out);// 输出

out.close();

}

catch (IOException e)

{

e.printStackTrace();

}

}



public static void main(String[] args)

{

System.out.println("图像缩放--ImageDone");

new ImageDone().imageZoom("d://1.gif", "d://1", 0.5f);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐