import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.AffineTransform; import javax.swing.ImageIcon; import javax.swing.JComponent; import javax.swing.JFrame; public class BasicDraw { public static void main(String[] args) { new BasicDraw(); } BasicDraw() { JFrame frame = new JFrame(); frame.add(new MyComponent()); frame.setSize(300, 300); frame.setVisible(true); } } class MyComponent extends JComponent { public void paint(Graphics g) { Graphics2D g2d = (Graphics2D) g; AffineTransform tx = new AffineTransform(); double shiftx = .1; double shifty = .3; tx.shear(shiftx, shifty); g2d.setTransform(tx); g2d.drawImage(new ImageIcon("a.png").getImage(), tx, this); } }