tooleks/php-avg-color-picker

The PHP Average Color Picker Library

1.1.2 2017-07-07 11:41 UTC

This package is not auto-updated.

Last update: 2024-04-13 18:40:41 UTC


README

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.

Example

Input - The Image Path

The Image Path
Input

Output - The Image Average Color

The Image Average Color
Output

Requirements

"php": "^7.0", "ext-mbstring": "*", "ext-gd": "*"

Installation

Package Installation

Execute the following command to get the latest version of the package:

composer require tooleks/php-avg-color-picker

Usage Examples

<?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>

Tests

Execute the following command to run tests:

./vendor/bin/phpunit