Обнаружение пустых изображений с помощью php?

Как я могу обнаружить, что изображение пустое (только одного, произвольного цвета или, с gif, кадров произвольного цвета) с помощью PHP и /или imagemagick?

Я думаю, что это то, что я собираюсь попробовать: http://www.php.net/manual/en/function.imagecolorat .php # 97957

7 голосов | спросил Kenneth Rapp 6 Maypm11 2011, 23:15:14

2 ответа


0

Вы можете проверить изображение внутри PHP, используя imagecolorat (это может быть медленно, но работает):

function isPngValidButBlank($filename) {
  $img = imagecreatefrompng($filename);
  if(!$img)
    return false;
  $width = imagesx($img);
  $height = imagesy($img);
  if(!$width || !$height)
    return false;
  $firstcolor = imagecolorat($img, 0, 0);
  for($i = 0; $i < $width; $i++) { 
    for($j = 0; $j < $height; $j++) {
      $color = imagecolorat($img, $i, $j);
      if($color != $firstcolor)
        return false;
    }
  }
  return true;
}
ответил Kevin Borders 6 PM00000040000005831 2014, 16:59:58
0

Получите стандартное отклонение от подробной статистики для каждой плитки. Если стандартное отклонение равно 0, изображение имеет один цвет.

Предположительно, «количество цветов» также сделает это; будет 1.

Используйте параметр -format: http://www.imagemagick.org/script/escape.php

ответил two7s_clash 6 Maypm11 2011, 23:46:53

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132