Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Help: Affichage d'image bmp avec transparence grace a son masque [ Archives / Au secours ] (Sirusisback)

mercredi 7 juillet 2004 à 15:08:00 | Help: Affichage d'image bmp avec transparence grace a son masque

Sirusisback

Bonjour je suis nouveau et j'ai probleme:

Jai trois image:
- backgroung.bmp
- image.bmp (image quelconque)
- image_mask.bmp (masque de l'image.bmp)

Je suis entrain de creer un application et je voudrais afficher une image (image.bmp) sur une autre image (backgroung.bmp). A telle position (x,y). Ca je pense y arriver.

Mais Le probleme c'est que je veux avoir la transparence de image.bmp grace a son mask (image_mask.bmp) qui est la meme image sauf que pixel blanc pour transparence et pixel noir pour affichage (masque).

Il faudrait que je creer une image gif avec transparence.
Si (pixel image_mask.bmp == blanc)
Faire pixel image.gif = transparent
Sinon pixel image.gif = pixel image.bmp

Et afficher a la fin image.gif sur mon background.bmp.

J'espere que c'est clair. Je pensais utiliser peut-etre un bufferedimage pour la comparaison pixel mais je n'arrive pas a l'utilise. (initialisation, connaitre la couleur du pixel, afficher l'image gif contenu dans un bufferedimage)

C'est peut-etre complique mais j'ai plein d'images avec leurs masques et il faut que je les affiches les une par dessus les autres.

Merci d'avance

sirusisback

mercredi 7 juillet 2004 à 15:31:45 | Re : Help: Affichage d'image bmp avec transparence grace a son masque

wargre


pour le
BufferedImage img=new BufferedImage(largeur,hauteur,BufferedImage.TYPE_4BYTE_ABGR);
puis t'utilise img.setRGB(x,y,RGB);
img.getRGB(x,y);

mercredi 7 juillet 2004 à 15:54:58 | Re : Help: Affichage d'image bmp avec transparence grace a son masque

Sirusisback


Merci mais comment je mets mon image.bmp dans le bufferedimage

mercredi 7 juillet 2004 à 16:14:05 | Re : Help: Affichage d'image bmp avec transparence grace a son masque

wargre


BufferedImage rd;
Image img=Toolkit.getDefaultToolkit().getImage(fichier);
rd.createGraphics().drawImage(img,x,y,NULL);

jeudi 8 juillet 2004 à 14:58:39 | Re : Help: Affichage d'image bmp avec transparence grace a son masque

Sirusisback

Image img = Toolkit.getDefaultToolkit().getImage("qgn_menu_cnv_cxt.bmp");
BufferedImage rd = new BufferedImage(img.getWidth(null), img.getHeight(null), BufferedImage.TYPE_INT_RGB );
rd.createGraphics().drawImage(img, img.getWidth(null), img.getHeight(null), null);
for(int x=0;x<44;x++)
for(int y=0;y<44;y++)
System.out.println("X=" + x + " Y=" + y + " RGB=" + rd.getRGB(x,y));

Erreur:
java.lang.IllegalArgumentException: Width (-1) and height (-1) cannot be <= 0
at java.awt.image.DirectColorModel.createCompatibleWritableRaster(DirectColorModel.java:999)
at java.awt.image.BufferedImage.<init>(BufferedImage.java:250)
at Preview.<init>(Preview.java:21)
at Preview.main(Preview.java:54)
Exception in thread "main"

vient de img.getWidth(null) et de img.getHeight(null) qui renvoie -1 je sais pas pourquoi


Est-ce que quelqu'un peut me mettre un exemple pour mettre une image BMP dans un bufferedimage et afficher les valeurs rouge verte bleu d'un pixel.

mercredi 27 octobre 2004 à 15:12:45 | Re : Help: Affichage d'image bmp avec transparence grace a son masque

lluzie


ben ton probleme viens du fait que tes images n'ont pas encore été chargées et dans ce cas les valeurs de getWidth() et getHeight() valent -1

Ton bonheur viendra en regardant la classe MediaTracker dans l'api JAVA , c'est un pisteur d'image qui te renvoi true qd les images sont chargée.

voili voilou!

mercredi 27 octobre 2004 à 15:15:55 | Re : Help: Affichage d'image bmp avec transparence grace a son masque

lluzie


lluzie

MediaTracker tracker = new MediaTracker(c);

public BufferedImage getBufferedImage(String imageFile,
Component c) {
Image image = c.getToolkit().getImage(imageFile);
waitForImage(image, c);
BufferedImage bufferedImage =
new BufferedImage(image.getWidth(c), image.getHeight(c),
BufferedImage.TYPE_INT_RGB);
Graphics2D g2d = bufferedImage.createGraphics();
g2d.drawImage(image, 0, 0, c);
return(bufferedImage);
}


public boolean waitForImage(Image image, Component c) {

tracker.addImage(image, 0);
try {
waitForAll();
} catch(InterruptedException ie) {}
return(!isErrorAny());
}


VOILI VOILA!! hopes that helps



Cette discussion est classé dans : image, gif, pixel, bmp, transparence


Répondre à ce message

Sujets en rapport avec ce message

javax.imageio.ImageIO ??? [ par SLaYerS ] Voila on m'avait dit qu'on pouvait lire toute sorte de fichier image... le BMP est il aussi suporter ?Car quand je fait Image img = ImageIO.read(new F creer une image [ par leBigouden ] salut a tousje dois generer une image dans un Jpanel ou JLabelet je sais pas trop comment mis prendrecar j'ai calculé ma matrice de valeur pour la cou BuferedImage et images [ par AlphaSurfeur ] Bonjour à tous,Voila, je voudrais deposer une image dans une BufferedImage de façon à pouvoir la modifier pixel par pixel. Le probleme c'est que je n' CGI - envoyer une image GIF-JPEG [ par felipelvh ] Je suis en train d'ecrire un CGI (destiné a etre embarqué)Il me faut donc pouvoir envoyer des images compressées.ma réponse au GET de Internet Explore Conversion jpg, bmp, gif. [ par Troliote ] Bonjour bonjour!J'aurais besoin de qq renseignements.J'aimerais savoir s'il est possible, en java, de convertir des images en gif, bmp en jpg? Et si o Image en GIF sans enregistrer [ par balbinus ] Je voudrais faire un serveur qui génère une image aléatoire... J'ai donc, pour l'instant, une BufferedImage. Comment je peux faire pour l'envoyer sous Couleur d'un pixel d'une image [ par ton13or ] J'ai un problème en java et j'aimerai savoir si quelqu'un a déjà du utiliser cette méthode. Voilà, j'aimerai construire un tableau d'int contenant la PBS ANIMATIONS THREADS [ par Geomaster ] Voilà mon probleme.--------------------------------------------------------------------this.y -= 10;image = "Perso_Dos_2.gif";panneau.repaint();try { Transparence d'un pixel [ par EulaSky ] bonjour tout le monde!voila mon problème: j'ai une image et certains pixel ne me plaisent pas (sont pas beaux), je voudrais les rendres invisible, com Bouton vec .ico et non avec .gif [ par kikoj ] Salut à tous,Mon probléme c'est que j'ai un JButton qui doit recevoir une certaine image. Le probléme c'est que l'image doit être un .gif et l'image q


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,234 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.