The package provides the library for picking an average color from the given image. Currently it supports image/png
, image/jpeg
, image/gif
image MIME types.
"php": "^7.0", "ext-mbstring": "*", "ext-gd": "*"
Execute the following command to get the latest version of the package:
composer require tooleks/php-avg-color-picker
<?php
use Tooleks\Php\AvgColorPicker\Gd\AvgColorPicker;
$imageAvgRgbColor = (new AvgColorPicker)->getImageAvgRgbByPath($imagePath);
// or
$imageAvgRgbColor = (new AvgColorPicker)->getImageAvgRgbByResource($gdImageResource);
// or
$imageAvgRgbColor = (new AvgColorPicker)->getImageAvgRgb($imagePath);
// or
$imageAvgRgbColor = (new AvgColorPicker)->getImageAvgRgb($gdImageResource);
// The `$imageAvgRgbColor` variable contains the average color of the given image in RGB format (array)[255, 255, 255].
<?php
use Tooleks\Php\AvgColorPicker\Gd\AvgColorPicker;
$imageAvgHexColor = (new AvgColorPicker)->getImageAvgHexByPath($imagePath);
// or
$imageAvgHexColor = (new AvgColorPicker)->getImageAvgHexByResource($gdImageResource);
// or
$imageAvgHexColor = (new AvgColorPicker)->getImageAvgHex($imagePath);
// or
$imageAvgHexColor = (new AvgColorPicker)->getImageAvgHex($gdImageResource);
// The `$imageAvgHexColor` variable contains the average color of the given image in HEX format (string)"#fffff".
You can use the calculated value to show the average image color in its container before the image is loaded.
<div style="background-color: <?= $imageAvgHexColor ?>; width: <?= $imageWidth ?>; height: <?= $imageHeight ?>;">
<img src="/url/to/the/image.(jpg|jpeg|png|gif)" alt="">
</div>
Execute the following command to run tests:
./vendor/bin/phpunit