Transparence avec une image PNG ?

Résolu
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 - 30 juin 2006 à 13:36
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 - 30 juin 2006 à 22:30
Bonjour,

j'avais un problème : lorsque j'affiche une image PNG dans une pictureBox sur mon application possédant une image de fond, il y avait du blanc et je voulais le supprimer.
On m'a conseillé alors de le mettre en GIF pour pouvoir mettre de la transparence ...

oui MAIS le GIF me fait des horreur et l'image doit-être très belle, comment je pourrais faire ?
soit pour faire de la transparence avec du PNG (ou autre format non compressé, aparement impossible), soit pour convertir la PNG en GIF sans perte énorme de qualité d'image ...

merci d'avance pour les réponses ...
A voir également:

7 réponses

troxsa Messages postés 553 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 2 octobre 2016 1
30 juin 2006 à 16:15
Heu ... il suffit pas mettre la couleur correspondant a la couleurs du font de l'image dans la propriete TransparencyKey et le tour est joué !

Personnelement chez moi ça fonctionne ! a condition d'avoir le bon code couleurs !

http://www.troxsa.info/
Le site qui ne parle qu'un seul langage, visual basic 2005
3
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
30 juin 2006 à 13:37
0
Utilisateur anonyme
30 juin 2006 à 14:32
Salut,

Met le backcolor de ta picturebox en transparant et ajoute ce code qui ajoute une couleur de transparence à l'image:



Private

Sub
FormOnLoad(
ByVal
Sender
As
System.Object,
ByVal
 Args
As
System.EventArgs)
Handles

MyBase
.Load

  TaPictureBox.Image = SetImageTransparencyColor(TaPictureBox.Image, System.Drawing.Color.White)

End

Sub

Private

Function
SetImageTransparencyColor(
ByVal
Image
As
System.Drawing.Image,
ByVal
TransparencyColor
As
System.Drawing.Color)
As
System.Drawing.Image

  
Dim
TmpImg
As
System.Drawing.Image =
New
System.Drawing.Bitmap(Image.Width, Image.Height)

  
Dim
Graphics
As
System.Drawing.Graphics = System.Drawing.Graphics.FromImage(TmpImg)

  
Dim
ImgAttr
As

New
System.Drawing.Imaging.ImageAttributes

  ImgAttr.SetColorKey(TransparencyColor, TransparencyColor)

  Graphics.DrawImage(Image,
New
System.Drawing.Rectangle(0, 0, TmpImg.Width, TmpImg.Height), 0, 0, Image.Width, Image.Height, System.Drawing.GraphicsUnit.Pixel, ImgAttr)

  Graphics.Dispose()

  
Return
TmpImg

End

Function






Kenji

Merci de lire le règlement (vivement conseillé voir obligatoire).

/FONT>
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
30 juin 2006 à 16:31
ah oui juste la transparence : c'est mes images qui contiennent du blanc lol

excusez moi pour cette erreur vraiment c**** lol

@+++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
30 juin 2006 à 18:13
euh je trouve le transparencykey mais comment la mettre sur 1 couleur précise ?

exemple : violet = transparent ...
0
troxsa Messages postés 553 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 2 octobre 2016 1
30 juin 2006 à 19:43
Ben il faut avoir le code couleur !!!!
La question sera sertainement comment avoir le code couleur
avec un logiciel de retouche d'image, il y a aussi des gratuits

http://www.troxsa.info/
Le site qui ne parle qu'un seul langage, visual basic 2005
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
30 juin 2006 à 22:30
pas tout compris lol

euh pour le code couleur, c'est dans VB.net 2005 ou dans des logiciels de retouches d'images ? (j'aime bien photofiltre lol et photoshop que j'ai pas encore ...)

merci pour tes rep TroXsA ...
0
Rejoignez-nous