在调整帧大小之前,缩放图像不会正确显示

时间:2014-04-15 08:32:45

标签: java image swing jframe paint

我正在尝试使用AffineTransform缩放图像。但是,最初出现Frame时图像无法正确显示。

enter image description here

但在调整帧大小后,图像显示完美。

enter image description here

这是代码。

public class MainFrame extends javax.swing.JFrame {

  Line line;
  BufferedImage bi;

  public MainFrame() {
    initComponents();

    try {
      bi = ImageIO.read(new File("map.png"));
    } catch (Exception ex) {
      ex.printStackTrace();
    }
  }

  public void paint(Graphics g) {
    Graphics2D g2 = (Graphics2D) g;
    AffineTransform old = g2.getTransform();
    g2.scale(0.25, 0.25);
    g2.drawImage(bi, 0, 0, null);
    g2.setTransform(old);
  }

  ...
}

0 个答案:

没有答案