如何调整图片大小并保持其长宽比?
以下是我使用的方法:
private static BufferedImage resizeImage(BufferedImage originalImage,
int type) {
BufferedImage resizedImage = new BufferedImage(IMG_WIDTH, IMG_HEIGHT,
type);
Graphics2D g = resizedImage.createGraphics();
g.drawImage(originalImage, 0, 0, IMG_WIDTH, IMG_HEIGHT, null);
g.dispose();
return resizedImage;
}
type
变量:
BufferedImage original = ImageIO.read(new File(imagePath));
int type = original.getType() == 0 ? BufferedImage.TYPE_INT_ARGB
: original.getType();
问题在于有些图片可以正确调整大小,但其他图片由于IMG_WIDTH和IMG_HEIGHT而失去它们的长宽比。是否有一种方法可以获取原始图像尺寸,然后应用某种比例调整大小以保持调整大小后图像的长宽比?