Bonjour,
Je voudrais fabriquer un tout petit programme permettant de rendre transparent le fond d'une image.
L'idée est de mettre une couleur de fond sur une image avec un programme de graphisme (j'utilise imageJ), puis d'appliquer le petit programme en Processing pour transformer tous les pixels de la couleur du premier (en haut à gauche) en les remplaçant par du "transparent"
J'ai fait le petit programme suivant mais ça ne marche pas comme je voudrais.
j'ai mis la couleur : color(0,0,0,0) en pensant que le fait de mettre le alpha à zéro suffirait.
Je me demande où ça cloche !!!
(Dans l'exemple, j'utilise le format gif mais j'ai essayé avec le png et le résultat est le même !)
(merci pour votre aide )
PImage inImage,outImage;
color couleur;
inImage=loadImage("in.gif");
outImage=inImage;
couleur=inImage.get(0,0);
for (int y=0;y<inImage.height;y++) {
for (int x=0;x<inImage.width;x++) {
if (inImage.get(x,y)==couleur) outImage.set(x,y,color(0,50));
}
}
outImage.save("out.gif");
exit();
Dernière modification par EricRG (2014-05-22 09:42:28)
Hors ligne
Hello...
Je n'ai pas cherché à savoir pourquoi ton sketch ne marchait pas...
Mais en voici un qui marche...
PImage inImage, outImage; color couleur; inImage = loadImage("in.gif"); outImage = createImage(inImage.width, inImage.height, ARGB); inImage.loadPixels(); couleur = inImage.pixels[0]; for (int y=0; y<inImage.width*inImage.height; y++) { outImage.pixels[y] = inImage.pixels[y]; if (inImage.pixels[y]==couleur) outImage.pixels[y] = color (0, 0); } outImage.save("out.gif"); exit();
Bon courage...
Hors ligne
Pages: 1