private static function vboxFromHistogram(array $histo)
{
$rgbMin = array(PHP_INT_MAX, PHP_INT_MAX, PHP_INT_MAX);
$rgbMax = array(0, 0, 0);
// find min/max
foreach ($histo as $index => $count) {
$rgb = static::getColorsFromIndex($index, 0, ColorThief::SIGBITS);
// For each color components
for ($i = 0; $i < 3; ++$i) {
if ($rgb[$i] < $rgbMin[$i]) {
$rgbMin[$i] = $rgb[$i];
} elseif ($rgb[$i] > $rgbMax[$i]) {
$rgbMax[$i] = $rgb[$i];
}
}
}
return new VBox($rgbMin[0], $rgbMax[0], $rgbMin[1], $rgbMax[1], $rgbMin[2], $rgbMax[2], $histo);
}