import javax.imageio.ImageIO; import javax.swing.JFrame; import javax.swing.JPanel; import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Transparency; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; public class DrawPic extends JFrame { private Mypanel mp; public DrawPic() { this.setSize(500,500); this.setLocation(100,100); this.setDefaultCloseOperation(EXIT_ON_CLOSE); mp = new Mypanel(); mp.test(); this.add(mp); this.setVisible(true); } public static void main(String[] args){ new DrawPic(); } private class Mypanel extends JPanel{ public void paint(Graphics g){ super.paint(g); for(int i = 0; i < 108; i++){ Color cl = new Color(255,0,0,10+i*2); Color c2 = new Color(0,255,0,10+i*2); g.setColor(cl); g.drawRect(10, i, 1, 1); g.setColor(c2); g.drawRect(7, i, 1, 1); } } public void test(){ /* * 保存图片 */ BufferedImage image = new BufferedImage(192,108,BufferedImage.TYPE_INT_ARGB); Graphics2D g = image.createGraphics(); image = g.getDeviceConfiguration().createCompatibleImage(192,108, Transparency.TRANSLUCENT); g.dispose(); g = image.createGraphics(); for(int i = 0; i < 108; i++){ Color cl = new Color(255,0,0,10+i*2); Color c2 = new Color(0,255,0,10+i*2); g.setColor(cl); g.drawRect(10, i, 1, 1); g.setColor(c2); g.drawRect(7, i, 1, 1); } try { ImageIO.write(image, "png", new File("d:/1.png")); } catch (IOException e) { e.printStackTrace(); } } } }