Пример #1
0
 /**
  * Вычисления цвета фона изображения с текстом, Фон светлее текста или наоборот, если темнее то цвета инвертируются
  * @param resource $img
  * @return resource
  */
 public static function changeBackgroundBrightness($img)
 {
     $colorIndexes = self::getColorsIndexTextAndBackground($img);
     $brightnessBackground = Img::getBrightnessFromIndex($img, $colorIndexes['background']);
     if ($colorIndexes['text']) {
         $midColor = Img::getMidColorFromIndexes($img, $colorIndexes['text']);
         $brightnessText = ($midColor['red'] + $midColor['green'] + $midColor['blue']) / 3;
     } else {
         $brightnessText = 255;
     }
     if ($brightnessBackground < $brightnessText) {
         imagefilter($img, IMG_FILTER_NEGATE);
     }
     return $img;
 }