Cortando una imagen con CropImageFilter(ayuda!!!!)
Hola a todos quiero plantear un problema que tengo y espero que alguien pueda ayudarme estoy tratando de hacer un puzzle y estoy utilizando la clase CropImageFilter pero al parecer existe un problema el caso es que no se cual
public void paint(Graphics g){
g.drawImage(createImage(new FilteredImageSource(fondo.getSource(), new CropImageFilter(0,0,50,50))),0,0,this);
}
segun el codigo de arriba deberia sacar un pedazo de la imagen original que es el fondo y ya lo declare mas arriba
Image fondo=Toolkit.getDefaultToolkit().createImage("src/Imagenes/Otros/pet_of_company.jpg");
y deberia dibujarla si alguien pudiera decirme cual es el error le estare muy agradecido
public void paint(Graphics g){
g.drawImage(createImage(new FilteredImageSource(fondo.getSource(), new CropImageFilter(0,0,50,50))),0,0,this);
}
segun el codigo de arriba deberia sacar un pedazo de la imagen original que es el fondo y ya lo declare mas arriba
Image fondo=Toolkit.getDefaultToolkit().createImage("src/Imagenes/Otros/pet_of_company.jpg");
y deberia dibujarla si alguien pudiera decirme cual es el error le estare muy agradecido
Hola, el codigo funcionando es el siguiente. Obviamente tenes que cambiar el nombre de la imagen x el que tenes vos.
Saludos y suerte!
<code>
class MyImg extends Canvas {
Image im = null;
public MyImg () {
BufferedImage img = loadImage("bicho9.gif");
im = createImage(new FilteredImageSource(img.getSource(), new CropImageFilter(0,0,50,50)));
}
public void paint(Graphics g){
g.drawImage(im,0,0,this);
}
public BufferedImage loadImage(String nombre) {
URL url = null;
try {
url = getClass().getClassLoader().getResource(nombre);
return ImageIO.read(url);
} catch (Exception e) {
System.out.println("No se pudo cargar la imagen " + nombre + " de " + url);
System.out.println("El error fue : " + e.getClass().getName() + " "
+ e.getMessage());
System.exit(0);
return null;
}
}
}
public class Pruebas extends JFrame {
Pruebas() {
Container pane = getContentPane();
pane.setLayout(new BorderLayout());
setSize(100,100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
pane.add(new MyImg());
}
public static void main(String[] args) {
Pruebas frm = new Pruebas();
frm.setVisible(true);
}
}
</code>
Saludos y suerte!
<code>
class MyImg extends Canvas {
Image im = null;
public MyImg () {
BufferedImage img = loadImage("bicho9.gif");
im = createImage(new FilteredImageSource(img.getSource(), new CropImageFilter(0,0,50,50)));
}
public void paint(Graphics g){
g.drawImage(im,0,0,this);
}
public BufferedImage loadImage(String nombre) {
URL url = null;
try {
url = getClass().getClassLoader().getResource(nombre);
return ImageIO.read(url);
} catch (Exception e) {
System.out.println("No se pudo cargar la imagen " + nombre + " de " + url);
System.out.println("El error fue : " + e.getClass().getName() + " "
+ e.getMessage());
System.exit(0);
return null;
}
}
}
public class Pruebas extends JFrame {
Pruebas() {
Container pane = getContentPane();
pane.setLayout(new BorderLayout());
setSize(100,100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
pane.add(new MyImg());
}
public static void main(String[] args) {
Pruebas frm = new Pruebas();
frm.setVisible(true);
}
}
</code>
