Java - Leer el color de una imagen empaquetada en un .jar

 
Vista:

Leer el color de una imagen empaquetada en un .jar

Publicado por Martha (7 intervenciones) el 12/10/2006 23:55:07
Buen día,
Este es un programa que a partir de dos posiciones de píxel que le da el usuario, retorna el color de esos pixeles en una imagen.

import java.lang.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;
import java.io.*;
import javax.swing.*;
import java.awt.image.BufferedImage;
import java.net.URL;
import java.applet.*;

public class Imagenes extends Applet{

int Ra0;
int Rb0;
static int d;
static int pixelesDerecha=1950;
static int pixelesAbajo=1860;

public Imagenes(double imxa,double imxb,double imya,double imyb) {
try{

URL url1 = new URL("jar:file:C:/SATUD/SATUD.jar!/Intelsat901.jpg");

for (int d=0; d <6; d++){

ImageIcon image = new ImageIcon(url1]);
Image img = image.getImage();
BufferedImage Plano = new BufferedImage(
img.getWidth(null),
img.getHeight(null),
BufferedImage.TYPE_INT_RGB );
Graphics g = Plano.createGraphics();

{
//Proceso de captación de la imagen
g.drawImage(img, 0, 0, null);
g.dispose();
//Recorre pixel a pixel en la imagen
for(int i=0;i<pixelesDerecha-1;i++){
for(int j=0;j<pixelesAbajo-1;j++){

try{
//Toma los valores Rojo de la imagen

//Especificación del pixel al que se le quiere tomar el color
if(i==imxa){
if(j==imya){
Ra0 = Plano.getColorModel().getRed(Plano.getRGB(i,j));
}}
if(i==imxb){
if(j==imyb){
Rb0 = Plano.getColorModel().getRed(Plano.getRGB(i,j));
}}
}

catch(java.lang.ArrayIndexOutOfBoundsException m){}
catch(java.lang.NullPointerException m){}

}//Fin del for para recorrer pixeles
}//Fin del for para recorrer pixeles
}

}
} catch (Exception ioe)
{
}

}

public int return_Ra0(){
return Ra0;
}
public int return_Rb0(){
return Rb0;
}

}

Es un programa que funciona, pero cuando se genera el .jar, ya no funciona por la clase ImageIcon, como puedo hacer para que estando dentro del .jar, lea los píxeles de color en la imagen?
Si alguien sabe, agradecería mucho su ayuda...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder