|
|
|
| Есть следующий код:
Цвет в RGB
$R = 255;
$G = 255;
$B = 255;
$Bites_1 = chr(($B>>3)|(($G&0x1c)<<3));
$Bites_2 = chr(($R&0xf8)|(($G&0xe0)>>5));
В результате этого издевательства мы имеем уже 2 числа 255 и 255.
Может ктото сможет вывести исходный цвет из этого результата?
Конкретнее, мне нужно получить цвет в RGB из \xff\xff.
Спасибо. | |
|
|
|
|
|
|
|
для: Nataliya ~*~
(28.03.2009 в 15:54)
| | >Есть следующий код:
>Цвет в RGB
>$R = 255;
>$G = 255;
>$B = 255;
>
>$Bites_1 = chr(($B>>3)|(($G&0x1c)<<3));
>$Bites_2 = chr(($R&0xf8)|(($G&0xe0)>>5));
>
>В результате этого издевательства мы имеем уже 2 числа 255 и 255.
>Может ктото сможет вывести исходный цвет из этого результата?
$B = ($Bits1&0x1F)<<3;
$G = (($Bits1>>5)&7)|(($Bits2&7)<<3);
$R = ($Bits2&0xF8);
Младшие разряды полей потеряны при первом преобразовании
останется по 5 бит B и R, и 6 бит G | |
|
|
|
|
|
|
|
для: Trianon
(28.03.2009 в 16:06)
| | А можна как-то преобразовать их без потерь?
И огромное спасибо за предыдущий ответ!) | |
|
|
|
|
|
|
|
для: Nataliya ~*~
(28.03.2009 в 16:14)
| | В произвольном целом числе из диапазона [0...255] ровно 8 бит.
В трех таких числах, соответственно, 24 бита.
Код символа - 8 бит. Соответственно 2 символа это 16 бит.
24 бита впихнуть в 16 бит можно лишь с потерей 8-ми бит. | |
|
|
|
|
|
|
|
для: Trianon
(28.03.2009 в 16:23)
| | Спасибо еще рас! | |
|
|
|