Foros del Web » Programación para mayores de 30 ;) » Java »

zoom en imagenes con java

Estas en el tema de zoom en imagenes con java en el foro de Java en Foros del Web. hola vereis, Tengo una aplicacion en java que muestra unas imagenes de un directorio. La aplicación tiene dos botones para pasar a la imagen siguiente ...
  #1 (permalink)  
Antiguo 03/04/2009, 04:19
 
Fecha de Ingreso: enero-2009
Mensajes: 21
Antigüedad: 15 años, 3 meses
Puntos: 0
zoom en imagenes con java

hola vereis,

Tengo una aplicacion en java que muestra unas imagenes de un directorio. La aplicación tiene dos botones para pasar a la imagen siguiente o a la anterior.

Ahora necesito hacer un zoom, con el que al hacer click con el boton izquierdo del raton la imagen se acerque y con el boton derecho se aleje, pero no se como implementarlo.

Os dejo el codigo de la clase que contien el panel que muestra las imagenes:

Código HTML:
import java.awt.*;
import javax.swing.*;
import java.io.*;

public class PanelImagen extends JPanel {
    String dir;
    String[] listaFicheros;
    File carpeta;
    String path;
    int fotoactual;
    private Image imagen1;
	private Image imagen2;
	Dimension size;
	Graphics gimagen1;	
	Toolkit toolkit;
	PanelImagen() {
		fotoactual = 0;
		dir = "C:/Documents and Settings/Xavier/Mis documentos/CFGS/DAI2/C6 Programació Avançada/trim2/Marco de fotos/fotos/";
		carpeta = new File(dir);
		listaFicheros = carpeta.list();
		toolkit = Toolkit.getDefaultToolkit();
		imagen2 = toolkit.getImage(dir + listaFicheros[fotoactual]);
	}
	
	public void paint(Graphics g) {
		size = getSize(); //es de la clase Component, se llama directamente sin poner el objeto
		if(imagen1 == null) imagen1 = createImage(1024,1024); //creamos una imagen con un tamaño (permanecerá oculta). Es el tamaño máximo de la imagen cuando crece
		gimagen1 = imagen1.getGraphics(); //obtener entorno gráfico de imagen1
		gimagen1.setColor(getBackground()); //le ponemos el color del fondo
		gimagen1.fillRect(0, 0, size.width, size.height); //le dibujamos un rectangulo desde la esquina con alto y ancho del panel para borrar el contexto grafico de la imagen ficticia
		gimagen1.drawImage(imagen2, 0, 0, size.width, size.height, this); //sobre el contexto grafico de la imagen1 colocamos la imagen2 que es la que esta cargada del fichero. Con esta lÃ*nea hacemos q la imagen se ajuste al hacer grande y pequeño.
		g.drawImage(imagen1, 0, 0, this); //asi la visualizamos, desde el punto 0,0
	}
	
	public void recargaImagenSiguiente() {
		if(fotoactual == listaFicheros.length -1) fotoactual = 0;
		else fotoactual++;
		imagen2 = toolkit.getImage(dir + listaFicheros[fotoactual]);
		repaint();
	}
	
	public void recargaImagenAnterior() {
		if(fotoactual == 0) fotoactual = listaFicheros.length -1;
		else fotoactual--;
		imagen2 = toolkit.getImage(dir + listaFicheros[fotoactual]);
		repaint();
	}
	
}
Espero que me podais echar una mano! gracias!!!
  #2 (permalink)  
Antiguo 03/04/2009, 14:08
 
Fecha de Ingreso: diciembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: zoom en imagenes con java

Hola, nunca he trabajado con imágenes pero he estado buscando y he encontrado estos ejemplos en www.chuidiang.com

desplazar y hacer zoom en java

Seguro que puedes aprovechar algo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:49.