Mega Code Archive

 
Categories / Java Tutorial / 2D Graphics
 

Flip an image

import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Image; import java.awt.geom.AffineTransform; import java.awt.image.AffineTransformOp; import java.awt.image.BufferedImage; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JPanel; public class ImageFlip extends JPanel {   public void paint(Graphics g) {     Image myImage = new ImageIcon("yourImage.jpg").getImage();     BufferedImage bufferedImage = new BufferedImage(myImage.getWidth(null), myImage.getHeight(null), BufferedImage.TYPE_INT_RGB);     Graphics2D g2d = (Graphics2D) g;     Graphics gb = bufferedImage.getGraphics();     gb.drawImage(myImage, 0, 0, null);     gb.dispose();     AffineTransform tx = AffineTransform.getScaleInstance(-1, 1);     tx.translate(-myImage.getWidth(null), 0);     AffineTransformOp op = new AffineTransformOp(tx, AffineTransformOp.TYPE_NEAREST_NEIGHBOR);     bufferedImage = op.filter(bufferedImage, null);     g2d.drawImage(myImage, 10, 10, null);     g2d.drawImage(bufferedImage, null, 300, 10);   }   public static void main(String[] args) {     JFrame frame = new JFrame("Flip image");     frame.add(new ImageFlip());     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);     frame.setSize(570, 230);     frame.setVisible(true);   } }