将BufferedImage的大小调整为固定大小

时间:2016-06-07 20:47:40

标签: java awt

所以我在我的网络应用中上传了各种照片。 我想调整图像大小,以使宽高比不会改变,min(height,width) = 400px

任何好的和快速的解决方案? (上传照片时,我不刷新页面,并显示图像预览)

1 个答案:

答案 0 :(得分:2)

使用getScaledInstance方法可以轻松完成内置功能。您可以像这样使用它:

if(img.getWidth() > img.getHeight()){
    return img.getScaledInstance(400, -1, Image.SCALE_SMOOTH);
} else{
    return img.getScaledInstance(-1, 400, Image.SCALE_SMOOTH);
}

这将保持纵横比,并将较大的轴设置为400像素。如果您更喜欢速度而不是质量,也可以更改缩放算法。