首页 > 解决方案 > 如何将图像缩小到窗口?

问题描述

我有一个窗口,我想在窗口内绘制一个 BufferedImage,但按比例缩小,我希望它在我调整窗口大小时总是改变。

dx1 和 dx2 应该是目标 X 位置,而 dy1 和 dy2 应该是目标 Y 位置。(这四个我不知道) sx1、sx2 应该是源X 位置,sy1、sy2 应该是目标Y 位置。(0, 0, image.getWidth(), image.getHeight() 因为我想使用完整的图像)

gr.drawImage(image, dx1, dx2, dy1, dy2, sx1, sx2, sy1, sy2, null);

我认为我需要 2 个填充(p1,p2),windowWidth 是 JPanel 的宽度,windowHeight 是 JPanel 的高度。 那是我的代码:

gr.drawImage(image, p1, p2, windowWidth-p1, windowHeight-p2, 0, 0, image.getWidth(), image.getHeight(), null);

标签: javaswingjframescalegraphics2d

解决方案


推荐阅读