У меня есть следующий код, который преобразует пиксель изображения в соответствующие значения RGB. Теперь мне нужно преобразовать все значения RGB в одно десятичное число, которое обычно возвращается imagecolorat ($ resource, $ x, $ y), после попытки diff , пути и поиск в Интернете, я не смог придумать способ, я надеюсь, что можно предоставить мне простой способ.
<?php
$resource = imagecreatefrompng("c.png");
$pixelValue=imagecolorat($resource, 1, 1); // this normally return something as 402399
// but after performing this
$r = ($PixelsValue >> 16) & 0xFF; // result will be $r= 16
$g = ($PixelsValue>> 8) & 0xFF; // result will be $g=123
$b = $PixelsValue& 0xFF; // result will be $b=200
// now I want to return $r= 16,$g=123 and $b=200 to 402399
?>
Вы можете использовать base_convert, документацию Вот.
Вы конвертируете из шестнадцатеричных значений в десятичные, довольно просто.
<?php
$r = '16';
$g = '123';
$b = '200';
$r = base_convert($r, 10, 16);
$g = base_convert($g, 10, 16);
$b = base_convert($b, 10, 16);
$value = $r.$g.$b;
echo $value; //will output 107bc8
?>
Других решений пока нет …