Bom dia!
Estou tentando encontrar algum jeito de espelhar uma imagem!
Alguem conhece alguma forma de realizar esse procedimento.
Estou tentando fazer isso utilizando a função copyArea, mas não estou conseguindo.
Desde ja agradeço.
Bom dia!
Estou tentando encontrar algum jeito de espelhar uma imagem!
Alguem conhece alguma forma de realizar esse procedimento.
Estou tentando fazer isso utilizando a função copyArea, mas não estou conseguindo.
Desde ja agradeço.
Galera, depois de muito pesquisar consegui criar um método que espelha uma imagem e retorna a mesma através de um BufferedImage.
Abaixo segue o código, pois na net não acha muita coisa não, e o que se acha é muito complicado.
Já coloquei um exemplo para rotacionar no seguinte link.:
http://www.portaljava.com/home/modules.php?name=Forums&file=viewtopic&p=136168#136168
[code]
public BufferedImage espelhar(BufferedImage img) throws NoninvertibleTransformException {
int posicao = 1;
int width = img.getWidth(); // largura
// imagem a ser espelhada
Graphics g = img.getGraphics();
Graphics2D g2 = (Graphics2D) g;
// nova imagem criada para receber o espelho
BufferedImage result = new BufferedImage( img.getWidth()*2, img.getHeight(), BufferedImage.TYPE_INT_RGB );
Graphics graphics = result.createGraphics();
Graphics2D graphics2D = (Graphics2D)graphics;
AffineTransform aT = g2.getTransform();
graphics2D.drawImage(img, aT, null);
//transposição da imagem
for (int x = 0; x < img.getWidth(); x++){
graphics2D.copyArea(--width,0,1,img.getHeight(),posicao+=2,0);
}
//retornando somente a imagem que foi convertida
return result.getSubimage(img.getWidth()+2, 0 ,img.getWidth()-2, img.getHeight()-2);
}
[/code][/url]