Page 1 sur 1
Conversion couleur html vers RGB
Publié : mar. 03/juin/2014 7:04
par falsam
Bonjour.
La couleur html
#ff0000 correspond à
RGB(255, 0, 0) c'est à dire du rouge (
Ai je vraiement besoin de le préciser)
Pourquoi je n'ai pas ce résultat avec le code suivant ?
Code : Tout sélectionner
HTMLColor.s = "#ff0000"
Color = Val("$" + Mid(HTMLColor, 2, 6))
Debug Red(Color)
Debug Green(Color)
Debug Blue(Color)
Re: Conversion couleur html vers RGB
Publié : mar. 03/juin/2014 7:22
par PAPIPP
Bonjour Falsam
La cause est la représentation des nombres en little indian
donc comme ceci
Code : Tout sélectionner
HTMLColor.s="#ff0000"
Color=Val("$"+ReverseString(Mid(HTMLColor,2,6)))
Debug Red(Color)
Debug Green(Color)
Debug Blue(Color)
Structure Col
StructureUnion
color2.l
colc.c[4]
EndStructureUnion
EndStructure
Define co.col
co\color2=RGB(255,0,0)
Debug Hex(co\color2)
For i=0 To 3
s$+ Hex(co\colc[i])
Next
Debug s$
A+
Re: Conversion couleur html vers RGB
Publié : mar. 03/juin/2014 7:31
par falsam
Halalalala ces indiens (
endian) !! Comme quoi il est nécessaire d'avoir un sage dans un groupe. Merci Papipp

Re: Conversion couleur html vers RGB
Publié : mar. 03/juin/2014 7:44
par PAPIPP
A Falsam
Tous les indiens ne sont pas sages.
J'ai ajouté ci dessus la démo de la représentation en little indian
A+
Re: Conversion couleur html vers RGB
Publié : mar. 03/juin/2014 7:46
par falsam
Merci pour cette démonstration Papipp.
Re: Conversion couleur html vers RGB
Publié : mar. 03/juin/2014 7:56
par djes
Vérifiez toujours le sens des couleurs dans le système/OS que vous utilisez, y compris la position du canal alpha. Il y a souvent une fonction qui permet de le savoir.
Re: Conversion couleur html vers RGB
Publié : mar. 03/juin/2014 8:31
par Micoute
Bonjour à tous et merci pour ce partage.
Juste pour être un tantinet pointilleux:
Code : Tout sélectionner
HTMLColor.s="#ff0000"
Color=Val("$"+ReverseString(Mid(HTMLColor,2,6)))
Debug Red(Color)
Debug Green(Color)
Debug Blue(Color)
Structure Col
StructureUnion
color2.l
colc.c[4]
EndStructureUnion
EndStructure
Define co.col
co\color2=RGB(255,0,0)
Debug Hex(co\color2)
For i=0 To 3
s$+ RSet(Hex(co\colc[i]),2,"0")
Next
Debug s$
Re: Conversion couleur html vers RGB
Publié : mar. 03/juin/2014 8:57
par falsam
djes a écrit :Vérifiez toujours le sens des couleurs dans le système/OS que vous utilisez, y compris la position du canal alpha. Il y a souvent une fonction qui permet de le savoir.
A part le jeu de couleur ARGB utilisé par Google sous la forme d'une valeur hexa , une couleur web avec couche alpha existe sous la forme hexadécimale ?
Re: Conversion couleur html vers RGB
Publié : mar. 03/juin/2014 9:16
par PAPIPP
Bonjour Micoute
C'est tout à fait exact pour les nombres hexa inférieurs à '10' ou 16 en décimal il faut ajouter un '0' à gauche
merci pour cette rectification.
A+
Re: Conversion couleur html vers RGB
Publié : mer. 04/juin/2014 8:36
par djes
falsam a écrit :djes a écrit :Vérifiez toujours le sens des couleurs dans le système/OS que vous utilisez, y compris la position du canal alpha. Il y a souvent une fonction qui permet de le savoir.
A part le jeu de couleur ARGB utilisé par Google sous la forme d'une valeur hexa , une couleur web avec couche alpha existe sous la forme hexadécimale ?
Apparemment non, l'alpha est géré depuis le
CSS 3, mais pas sous la forme hexadécimale :
4.2.2. RGBA color values
The RGB color model is extended in this specification to include “alpha” to allow specification of the opacity of a color. See simple alpha compositing for details. These examples all specify the same color:
em { color: rgb(255,0,0) } /* integer range 0 - 255 */
em { color: rgba(255,0,0,1) /* the same, with explicit opacity of 1 */
em { color: rgb(100%,0%,0%) } /* float range 0.0% - 100.0% */
em { color: rgba(100%,0%,0%,1) } /* the same, with explicit opacity of 1 */
Unlike RGB values, there is no hexadecimal notation for an RGBA value.
The format of an RGBA value in the functional notation is ‘rgba(’ followed by a comma-separated list of three numerical values (either three integer values or three percentage values), followed by an <alphavalue>, followed by ‘)’. The integer value 255 corresponds to 100%, rgba(255,255,255,0.

= rgba(100%,100%,100%,0.

. White space characters are allowed around the numerical values.
Implementations must clip the red, green, and blue components of RGBA color values to the device gamut according to the rules for the RGB color value composed of those components.
These examples specify effects that are possible with the rgba() notation:
p { color: rgba(0,0,255,0.5) } /* semi-transparent solid blue */
p { color: rgba(100%, 50%, 0%, 0.1) } /* very transparent solid orange */
Note. If RGBA values are not supported by a user agent, they should be treated like unrecognized values per the CSS forward compatibility parsing rules ([CSS21], Chapter 4). RGBA values must not be treated as simply an RGB value with the opacity ignored.