public void paint(Graphics g) {
Graphics2D g2 = (Graphics2D)g;
try {
InputStream in = getClass().getResourceAsStream("la_imagen.jpg");
JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(in);
BufferedImage image = decoder.decodeAsBufferedImage();
// Aqui se realiza la transformación (rotación de 45 grados en sentido horario, por ejemplo)
AffineTransform at = AffineTransform.getRotateInstance(Math.PI/4);
RenderingHints rh = new RenderingHints(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
AffineTransformOp atop = new AffineTransformOp(at,rh);
BufferedImage destino = atop.filter(image, null);
g2.drawImage(destino,0,20,this);
in.close();
}
catch (IOException e) {e.printStackTrace();}
catch (ImageFormatException e) {e.printStackTrace();}
}
Marcadores