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 : Association d'image [ Archives / Au secours !!! ] (DoudouBidou)

vendredi 29 avril 2005 à 16:54:08 | Association d'image

DoudouBidou

Bonjour,
j'ai une application qui utilise Python (jusque là tout va bien) et wxPython

je voudrais savoir s'il est possible (sans utiliser PIL) de combiner des images Bitmap
je m'explique j'ai une image qui me sert d'image de fond pour mes boutons et je voudrais ajouter dessus d'autre image ( des sortes d'icone quoi) et le faire à la volée si possible

si quelqu'un à une idée...

Merci


lundi 2 mai 2005 à 11:56:06 | Re : Association d'image

DoudouBidou


j'ai trouvé un début de solution avec la fonction wxImage.Paste()
qui permet le collage d'une image dans une autre.(cette fonction n'était pas dans le fichier d'aide de wxPython , mais je l'ai trouvé sur le site wxPython)

maintenant second problème, ma 2e image étant un gif elle contient une zone transparente, il ne faudrait pas la coller où la considéré comme un mask mais je ne sais pas comment faire...


lundi 2 mai 2005 à 13:09:42 | Re : Association d'image

taz_iup

essai de passer par les dc ( les canvas ) voici ce que j'ai trouve sur wxpython.org :

wxDC::Blit

bool Blit(wxCoord xdest, wxCoord ydest, wxCoord width, wxCoord height, wxDC* source, wxCoord xsrc, wxCoord ysrc, int logicalFunc = wxCOPY, bool useMask = false, wxCoord xsrcMask = -1, wxCoord ysrcMask = -1)

Copy from a source DC to this DC, specifying the destination coordinates, size of area to copy, source DC, source coordinates, logical function, whether to use a bitmap mask, and mask source position.

je crois qu'il existe une methode sur les objet visuel qui renvoice DC, ainsi tu pourras peindre tes deux images sur le composant de ton choix.
sinon tu peux aller voir a cette adresse il y a une doc spécifique a python pur wx et la fonction paste y est référencée.




lundi 2 mai 2005 à 13:10:27 | Re : Association d'image

taz_iup

bon euh sans commentaire voici l'adresse :
http://www.wxpython.org/docs/api/



lundi 2 mai 2005 à 13:14:09 | Re : Association d'image

DoudouBidou

Merci


je vais voir ce que ça donne, sinon j'ai trouvé (je pense) une méthode qui fonctionne mais un peu lourde, qui consiterai à composer moi même mon image pixels par pixels mais si je pouvais créer un mask ça serait aussi bien ...

lundi 2 mai 2005 à 13:16:57 | Re : Association d'image

taz_iup

ok tiens nous au courant

lundi 2 mai 2005 à 14:07:45 | Re : Association d'image

DoudouBidou

Finalement je vais rester sur ma méthode car je la comprends bien et c'est plus rapide que ce que je pensais:

la fonction ci-dessous permet de "combiner" 2 images GIF en supprimant la couleur de transparence de l'image du dessus (soit la couleurRGB (255,0,255))
on peut également ajuster la position de la 2nd image grace à l'offset

les images d'entrée doivent être des wx.Image

def joinImage(im1,im2,offsetx=0,offsety=0):
    stopx = im2.GetWidth()
    if stopx > (im1.GetWidth()-offsetx):
        stopx = im1.GetWidth()-offsetx
    stopy = im2.GetHeight()
    if stopy > (im1.GetHeight()-offsety):
        stopy = im1.GetHeight()-offsety
    if stopx>0 and stopy>0:
        for x in range(0,stopx):
            for y in range(0,stopy):
                rgb2 = (im2.GetRed(x,y),im2.GetGreen(x,y),im2.GetBlue(x,y))
                if rgb2 !=(255,0,255):
                    im1.SetRGB(x+offsetx,y+offsety,rgb2[0],rgb2[1],rgb2[2])
    return im1




Cette discussion est classé dans : possible, image, association


Répondre à ce message

Sujets en rapport avec ce message

dll avec python? [ par LokR ] Salut tout le monde!je me pose une kestion, je pense pas que ce soit possible mais d'un autre coté je pensais pas kon puisse faire d' *.exe avec pytho Vous feriez comment... ? [ par freeosca ] Bonjour à tous, Pourriez-vous me confirmer que l'exemple qui suit est possible avec ce langage : Exemple : - J'installe une distrib linux sur un pc variables dynamiques [ par judre ] Salut, En php, il est possible de créer des variables dynamiques avec la syntaxe: $variable = "titre"; ${$variable} = "Titre assigné"; print $titre;  Enregistrer une image [ par misteraoul ] Je suis désolé mais je ne trouve nul part comment faire pour enregistrer un caneva sous Tkinter en image bmp Est ce que c'est possible ? Si oui comm modifier les metadonnées [ par airod ] Je cherche a etre mis sur la voie. Comment peut on editer les champs IPTC (métadonnées) propre a une image? Faut il lire le fichier image comme simpl Python peut être interpreté par un navigateur comme dans html [ par rabikisa ] Est-ce possible d'interpreter python à partir d'un navigateur si on utilise une base de données gadfly?(comme les pages html quoi...)si possible comme Importer une image dans Tkinter... [ par skools ] Bonjour à tous, Et pardon à ceux à qui j'ai envoyé des messages perso, je n'arrivais pas à poster un suget dans le forum... Voilà, après des heures d script pour désinstaller/installer programme [ par Roro8883 ] Bonjour à tous !Est-il possible de créer un script (en pyhton, ou autre langage) qui permette de désinstaller un programme ? et d'en installer un ?En envoie d image sur le réseau [ par amina22 ] bonjour,je veux savoir si on peut envoyer  des fichiers (audio,vidéo,image..) a travers le réseau en utilisant la communication client/serveur(socket)


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,499 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é.