Como deixar um pixel transparente?

Aê, galera. Estou criando uma aplicação que funciona da seguinte maneira: o usuário move um cursor sobre uma imagem (.png) e seleciona um determinado pixel desta. Ao fazer isso todos os outros pixels que não são iguais ao pixel selecionado mudam de cor, destacando as cores que correspondem àquela que o usuário selecionou. Com este simples código abaixo eu já consigo fazer isso, transformando os pixels diferentes do qual o usuário escolheu para a cor Preta:

   [code]// Recebo o pixel da imagem atraves de um cursor, ativado pelo usuario, que seta o x e o y
            int rgb_imagem = (imagem.getRGB(x, y));
        	
        	int largura = imagem.getWidth();
        	int altura = imagem.getHeight();

            //Percorro todos os pixels da imagem
        	for (int i=0; i<largura; i++)
        		for (int j=0; j<altura; j++){
                            //Variavel que recebe o valor do RGB atual
        			int rgb_destac = imagem.getRGB(i, j);
        		
                    //Verifico se o pixel atual é diferente do pixel setado anteriormente atraves do cursor	
                    if (rgb_destac != rgb_imagem){

                            //Deixo o pixel atual na cor Preta
                    	imagem.setRGB(i, j, 000);
                    }
        		}[/code]

Gostaria de saber se é possível fazer a mesma coisa, só que ao invés de deixar o pixel diferente na cor preta eu gostaria de deixá-lo transparente. Existe alguma maneira de fazer isso? Se existe é possível fazer o controle do grau de transparência do pixel? Como fazer isso?

Desde já agradeço,

[]s

Ninguém vai responder? :cry:

Se não dá prá mudar o fator de transparência existe alguma maneira de retirar o brilho da cor através do RGB?

O conceito de transparência é um pouco mais complicado:

Primeiro transparência significa que há uma frente e um fundo, duas imagens por exemplo, e quer que a imagem da frente fique um pouco transparente para podermos começar a ver as imagens no fundo. Ou seja, não é algo que você vá encontrar a menos que haja esta situação, que o sistema permita camadas de imagens.

E segundo, normalmente transparência é mais uma canal de “cor” na imagem, normalmente com a mesma quantidade de bits que outro canal. Também normalmente esse canal é referido com A, e junto com outros sistemas, para RGB vc tem RGBA, ou ARGB, 24 bits de cores para 32 bits, 8 bits por canal. Então tente encontrar algum objeto que tenha um método setRGBA.

[quote=Bruno Laturner]O conceito de transparência é um pouco mais complicado:

Primeiro transparência significa que há uma frente e um fundo, duas imagens por exemplo, e quer que a imagem da frente fique um pouco transparente para podermos começar a ver as imagens no fundo. Ou seja, não é algo que você vá encontrar a menos que haja esta situação, que o sistema permita camadas de imagens.

E segundo, normalmente transparência é mais uma canal de “cor” na imagem, normalmente com a mesma quantidade de bits que outro canal. Também normalmente esse canal é referido com A, e junto com outros sistemas, para RGB vc tem RGBA, ou ARGB, 24 bits de cores para 32 bits, 8 bits por canal. Então tente encontrar algum objeto que tenha um método setRGBA.[/quote]

É, brother… acho que vou me aventurar então pelo HLS (ou HBS) que já possue um componente para tratamento de brilho… Aí ao invés de usar a idéia de uma imagem escura como plano de fundo basta tirar o brilho da imagem que já tenho em mãos…

Vlw pela dica…

[]s