Adapter une couleur en couleur web

Soyez le premier à donner votre avis sur cette source.

Vue 2 921 fois - Téléchargée 193 fois

Description

voila en fait c'est tout simple :

les couleurs web sont des multiples de 51 il suffit juste de faire une petite opération pour rétablir une valeur en multiple le plus proche, cette opération répétée pour les 3 composantes R V B et on a la couleur finale

Source / Exemple :


Private Sub Command1_Click()
Decompose Picture1.BackColor, R, v, b

'VOILA LES OPERATIONS QUI NOUS INTERESSE
R = CInt(R / 51) * 51
v = CInt(v / 51) * 51
b = CInt(b / 51) * 51
Picture2.BackColor = RGB(R, v, b)
Label3 = "R = " & R & "   V = " & v & "   B = " & b
End Sub

Private Sub Picture1_Click()
Com1.ShowColor
Picture1.BackColor = Com1.Color
Decompose Picture1.BackColor, R, v, b
Text1(0) = R
Text1(1) = v
Text1(2) = b
End Sub

Private Sub Text1_Change(Index As Integer)
On Local Error Resume Next
Picture1.BackColor = RGB(Val(Text1(0)), Val(Text1(1)), Val(Text1(2)))
End Sub

'cette procédure decompose la couleur en R,V,B
Public Sub Decompose(Couleur, R, v, b)
R = Int(Couleur Mod 256)
v = Int((Couleur - R) / 256 Mod 256)
b = Int((Couleur - R) / 256 / 256)
Verif R, v, b
End Sub

'procédure qui verifi les limites des composantes de la couleur rvb
Public Sub Verif(R, v, b)
If R < 0 Then R = 0
If v < 0 Then v = 0
If b < 0 Then b = 0
If R > 255 Then R = 255
If v > 255 Then v = 255
If b > 255 Then b = 255
End Sub

Conclusion :


voila, j'ai aussi mis le code pour avoir l'algo dans la compil, comme ca ca evite d'avoir besoin de se connecter.

Codes Sources

A voir également

Ajouter un commentaire Commentaire
Messages postés
25
Date d'inscription
mardi 13 août 2002
Statut
Membre
Dernière intervention
26 septembre 2004

GENIAL TA SOURCE, Merci BCP.
car G chercher avec des decalage de bit & des operations bianire, mais imposible a faire margher en VB (je suis + habitué a coder en C ;))

merci BCP, C pas con du tout.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.