How to convert Hex to RGB? (perl)
hex, perl, rgb
Solution
Assuming you're trying to map 00..FF16 to real numbers 0..1,
my @rgb = map $_ / 255, unpack 'C*', pack 'H*', $rgb_hex;
- `pack 'H*',` changes `"FF00FF"` to `"\xFF\x00\xFF"`.
- `unpack 'C*',` changes `"\xFF\x00\xFF"` to `0xFF, 0x00, 0xFF`.
- `map $_ / 255,` changes `0xFF, 0x00, 0xFF` to `0xFF/255, 0x00/255, 0xFF/255`
Problem
How do I convert my hexidecimal colors (e.g., 0000FF, FF00FF) into arithmetic RGB format (e.g., 0 0 1, 1 0 1)? I want to implement a command to do this in some of my perl scripts but I don't even know how to do it by hand. Could someone please help me do this in perl or even show me how to do this by hand so I can come up with my own perl command?