如何调整图像大小并保持宽高比?调整图像大小 - 保持宽高比
这是我使用的方法:
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。
有没有办法获得原始图像的尺寸,然后应用某种比例调整大小来保持调整大小的图像的纵横比?
我的问题是否有任何问题与图像#getScaledInstance – mKorbel 2012-04-01 12:20:54
@mKorbel不知道它是否仍然适用,但看到[Image.getScaledInstance()的危害](http://today.java.net/pub/ A /今天/ 2007/04/03 /危险-的图像-getscaledinstance.html)。 – 2012-04-01 13:20:35
谢谢你,这是一个答案+1 – mKorbel 2012-04-01 13:51:44