将图像大小调整为固定大小

发布于 2024-11-04 08:08:16 字数 51 浏览 0 评论 0原文

我需要一个逻辑来重新调整图像大小,使其始终为 320X240 或更小,并且应保持宽高比。

I need a logic to re-size an image so that its always 320X240 or smaller and should maintain aspect ratio.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

我不在是我 2024-11-11 08:08:16
1) determine which side of the image is the larger one
2) if its width, calc: faktor = 320/width, else faktor = 240/height;
3) downscale the image by size.x *faktor, size.y *faktor.

示例:

给定:图像具有 1024x640

1) its wider than high.
2) faktor = 320 / 1024 -> 0.3125
3) 1024 * 0.3125 = 320 (huh!)     
   640 * 0.3125 = 200.
1) determine which side of the image is the larger one
2) if its width, calc: faktor = 320/width, else faktor = 240/height;
3) downscale the image by size.x *faktor, size.y *faktor.

example:

Given: image has 1024x640

1) its wider than high.
2) faktor = 320 / 1024 -> 0.3125
3) 1024 * 0.3125 = 320 (huh!)     
   640 * 0.3125 = 200.
谎言 2024-11-11 08:08:16

看看 ImgScalr,java 库。具有多种转换质量和速度设置,并自动为您缩放。

BufferedImage sourceImage = ImageIO.read(new File(sourceFile));
BufferedImage destImage = Scalr.resize(sourceImage, Scalr.Method.ULTRA_QUALITY, 320, 240, Scalr.OP_ANTIALIAS);

Have a look at ImgScalr, library for java. Has several quality and speed settings for conversion as well as automatically scaling it for you.

BufferedImage sourceImage = ImageIO.read(new File(sourceFile));
BufferedImage destImage = Scalr.resize(sourceImage, Scalr.Method.ULTRA_QUALITY, 320, 240, Scalr.OP_ANTIALIAS);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文