JAVA改变图片大小
我实现了改变图片大小,但是分辨率有很大的影响,求教JAVA中的类或者算法解决这个问题,使之可以改变图片大小,同时不影响图片质量
java
图片
算法
类
分享到:
------解决方案--------------------
java自动生成略缩图
------解决方案--------------------
/**
* 图片缩放
*
* @param image 源图像对象。
* @param xscale 图像 x 轴(宽度)上的的缩放比例。
* @param yscale 图像 y 轴(高度)上的的缩放比例。
* @return 缩放后的图像对象。
*/
public static BufferedImage zoomImage(BufferedImage image, double xscale, double yscale) {
int width = (int) ((double) image.getWidth() * xscale);
int height = (int) ((double) image.getHeight() * yscale);
AreaAveragingScaleFilter areaAveragingScaleFilter = new AreaAveragingScaleFilter(width, height);
FilteredImageSource filteredImageSource = new FilteredImageSource(image.getSource(), areaAveragingScaleFilter);
BufferedImage result = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics g = result.getGraphics();
Canvas canvas = new Canvas();
g.drawImage(canvas.createImage(filteredImageSource), 0, 0, null);
return result;
}
------解决方案--------------------
3楼是摘1楼的么。。。 我测试了,可用
------解决方案--------------------
AreaAveragingScaleFilter比较好 一般的awt也行