图像缩放显示 Application版 和 Applet 版!!
/** * 功能:缩放显示图像gif * 著:书中[例9-13] P201 (Applet版) * 作者:李家华 * 时间:2014-04-08 * 博客:blog.csdn.net/lhcapricorn * */ import java.awt.Graphics; import java.awt.Image; import javax.swing.*; public class ShowImg extends JApplet{ Image img1; public void init(){ img1 = getImage(getCodeBase(),"img.gif"); } public void paint(Graphics g){ int w =img1.getWidth(this); int h =img1.getHeight(this); g.drawImage(img1, 5, 10, this); g.drawImage(img1,15,40,w/2,h/2,this); g.drawImage(img1, 5, 100, w*2,h*2,this); } }
/** * 功能:缩放显示图像gif * 说明:Application版 * 作者:李家华 * 时间:2014-04-08 * 博客:blog.csdn.net/lhcapricorn * */ import java.awt.Container; import java.awt.Graphics; import java.awt.Image; import java.awt.MediaTracker; import java.awt.Toolkit; import javax.swing.*; public class ShowImgApp { // static Image img1; public static void main(String arg[]){ ImageFrame frame = new ImageFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); frame.setLocationRelativeTo(null); } } class ImageFrame extends JFrame{ public ImageFrame(){ setSize(WIDTH,HEIGHT); setTitle("缩放显示图像"); //JPanel panel = new JPanel(); //this.add(panel); ImagePanel panel = new ImagePanel(); Container contentPane =getContentPane(); contentPane.add(panel); } public static final int WIDTH=400; public static final int HEIGHT=600; class ImagePanel extends JPanel{ public ImagePanel(){ image = Toolkit.getDefaultToolkit().getImage("img200.gif"); MediaTracker tracker = new MediaTracker(this); tracker.addImage(image,1); try { tracker.waitForID(1); }catch (InterruptedException exception){} } public void paintComponent(Graphics g){ super.paintComponent(g); int w = image.getWidth(this); int h = image.getHeight(this); g.drawImage(image,5,10,null ); g.drawImage(image,150,40,w/2,h/2,this); g.drawImage(image,10,200,w*2,h*2,this); } private Image image; } }