cdbi
Messages postés50Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention 4 mai 2022
-
31 mai 2011 à 22:24
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024
-
2 juin 2011 à 06:38
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 2 juin 2011 à 06:38
Je vois qu'en VB6 la matrice est pareil. Je viens de déposer une source Colomatrice_VB où tu peux faire des ajustements de couleurs avec le code VB qui s'affiche en temps réel.
http://www.vbfrance.com/codes/COLORMATRIX_VB_53227.aspx Si tu le désires comme tu n'as pas VB.Net, je peux t'envoyer l'exe. Tu pourras faire tes réglages et voir les modifications à apporter à ton code.
Laisse moi ton e-mail sur MP
@+ Le Pivert
cdbi
Messages postés50Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention 4 mai 2022 2 juin 2011 à 02:43
Bonsoir, Le Pivert
J'utilisais dejà ColorMatrix pour la transparence avec GDI+
Ta matrice me donne des images à dominance verte
Je cherchais à reproduire des images anciennes
Voiçi ma matrice
avec une transparence de 0.7 sur un Backcolor de &HA5BFE2
J'ai augmenté le Rouge et diminué le Vert
With lpColorMatrix.m(0, 0) 1: .m(0, 1) 0.349: .m(0, 2) = 0.272: .m(0, 3) = 0: .m(0, 4) = 0.m(1, 0) 0.769: .m(1, 1) 0.131: .m(1, 2) = 0.534: .m(1, 3) = 0: .m(1, 4) = 0.m(2, 0) 0.189: .m(2, 1) 0.168: .m(2, 2) = 0.3: .m(2, 3) = 0: .m(2, 4) = 0.m(3, 0) 0: .m(3, 1) 0: .m(3, 2) = 0: .m(3, 3) = vnTransparency: .m(3, 4) = 0.m(4, 0) 0: .m(4, 1) 0: .m(4, 2) = 0: .m(4, 3) = 0: .m(4, 4) = 1
End With
Mais c'est pas encore génial
cdbi
Messages postés50Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention 4 mai 2022 1 juin 2011 à 11:09
Merci, Le Pivert
Je vais étudier cela
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 1 juin 2011 à 06:11
Bonjour CDBI,
J'ai trouvé ce site qui traite la Colormatrix en VB6 avec un fichier à télécharger:
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=37541&lngWId=1 Pour le code en ton sépia de la colormatrix, le voici. Essaie de l'adapter en VB6:
Dim image_attr As New ImageAttributes
Dim cm As ColorMatrix
Dim rect As Rectangle = Rectangle.Round(Pic_source.Image.GetBounds(GraphicsUnit.Pixel))
Dim wid As Integer = Pic_source.Image.Width
Dim hgt As Integer = Pic_source.Image.Height
Dim bm As Bitmap
Dim gr As Graphics
'Sepia
bm = New Bitmap(wid, hgt)
gr = Graphics.FromImage(bm)
cm = New ColorMatrix(New Single()() { _
New Single() {0.3, 0.3, 0.3, 0, 0}, _
New Single() {1, 1, 0.7, 0, 0}, _
New Single() {0.1, 0.1, 0.1, 0, 0}, _
New Single() {0, 0, 0, 1, 0}, _
New Single() {0, 0, 0, 0, 1}})
'Vous pouvez essayer ceci aussi
'cm = New ColorMatrix(New Single()() { _
' New Single() {0.393, 0.349, 0.272, 0, 0}, _
' New Single() {0.769, 0.686, 0.534, 0, 0}, _
' New Single() {0.189, 0.168, 0.131, 0, 0}, _
' New Single() {0, 0, 0, 1, 0}, _
' New Single() {0, 0, 0, 0, 1}})
cdbi
Messages postés50Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention 4 mai 2022 31 mai 2011 à 22:24
Bonsoir Le Pivert
Pourrais tu donner la méthode en Snippets sous vb6
Je ne programme pas en .net et je cherche cette fonction
pour enregistrer des images en Sepia.
D'avance Merci
CDBI
2 juin 2011 à 06:38
http://www.vbfrance.com/codes/COLORMATRIX_VB_53227.aspx
Si tu le désires comme tu n'as pas VB.Net, je peux t'envoyer l'exe. Tu pourras faire tes réglages et voir les modifications à apporter à ton code.
Laisse moi ton e-mail sur MP
@+ Le Pivert
2 juin 2011 à 02:43
J'utilisais dejà ColorMatrix pour la transparence avec GDI+
Ta matrice me donne des images à dominance verte
Je cherchais à reproduire des images anciennes
Voiçi ma matrice
avec une transparence de 0.7 sur un Backcolor de &HA5BFE2
J'ai augmenté le Rouge et diminué le Vert
With lpColorMatrix.m(0, 0) 1: .m(0, 1) 0.349: .m(0, 2) = 0.272: .m(0, 3) = 0: .m(0, 4) = 0.m(1, 0) 0.769: .m(1, 1) 0.131: .m(1, 2) = 0.534: .m(1, 3) = 0: .m(1, 4) = 0.m(2, 0) 0.189: .m(2, 1) 0.168: .m(2, 2) = 0.3: .m(2, 3) = 0: .m(2, 4) = 0.m(3, 0) 0: .m(3, 1) 0: .m(3, 2) = 0: .m(3, 3) = vnTransparency: .m(3, 4) = 0.m(4, 0) 0: .m(4, 1) 0: .m(4, 2) = 0: .m(4, 3) = 0: .m(4, 4) = 1
End With
Mais c'est pas encore génial
1 juin 2011 à 11:09
Je vais étudier cela
1 juin 2011 à 06:11
J'ai trouvé ce site qui traite la Colormatrix en VB6 avec un fichier à télécharger:
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=37541&lngWId=1
Pour le code en ton sépia de la colormatrix, le voici. Essaie de l'adapter en VB6:
Dim image_attr As New ImageAttributes
Dim cm As ColorMatrix
Dim rect As Rectangle = Rectangle.Round(Pic_source.Image.GetBounds(GraphicsUnit.Pixel))
Dim wid As Integer = Pic_source.Image.Width
Dim hgt As Integer = Pic_source.Image.Height
Dim bm As Bitmap
Dim gr As Graphics
'Sepia
bm = New Bitmap(wid, hgt)
gr = Graphics.FromImage(bm)
cm = New ColorMatrix(New Single()() { _
New Single() {0.3, 0.3, 0.3, 0, 0}, _
New Single() {1, 1, 0.7, 0, 0}, _
New Single() {0.1, 0.1, 0.1, 0, 0}, _
New Single() {0, 0, 0, 1, 0}, _
New Single() {0, 0, 0, 0, 1}})
'Vous pouvez essayer ceci aussi
'cm = New ColorMatrix(New Single()() { _
' New Single() {0.393, 0.349, 0.272, 0, 0}, _
' New Single() {0.769, 0.686, 0.534, 0, 0}, _
' New Single() {0.189, 0.168, 0.131, 0, 0}, _
' New Single() {0, 0, 0, 1, 0}, _
' New Single() {0, 0, 0, 0, 1}})
image_attr.SetColorMatrix(cm)
gr.DrawImage(Pic_source.Image, rect, 0, 0, wid, hgt, GraphicsUnit.Pixel, image_attr)
Pic_sepia.Image = bm
Bonne programmation
@+ Le Pivert
31 mai 2011 à 22:24
Pourrais tu donner la méthode en Snippets sous vb6
Je ne programme pas en .net et je cherche cette fonction
pour enregistrer des images en Sepia.
D'avance Merci
CDBI