Cortando una imagen con CropImageFilter(ayuda!!!!)

NigthRipper
16 de Abril del 2006
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

martin
16 de Abril del 2006
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>